diff --git a/fs/jfs/jfs_logmgr.c b/fs/jfs/jfs_logmgr.c index c911d838b8ec..cf73b5b06ac3 100644 --- a/fs/jfs/jfs_logmgr.c +++ b/fs/jfs/jfs_logmgr.c @@ -1062,12 +1062,14 @@ int lmLogOpen(struct super_block *sb) struct jfs_log *log; struct jfs_sb_info *sbi = JFS_SBI(sb); + printk("%p, %s\n", sb, __func__); if (sbi->flag & JFS_NOINTEGRITY) return open_dummy_log(sb); if (sbi->mntflag & JFS_INLINELOG) return open_inline_log(sb); + printk("%p, %s\n", sb, __func__); mutex_lock(&jfs_log_mutex); list_for_each_entry(log, &jfs_external_logs, journal_list) { if (log->bdev_handle->bdev->bd_dev == sbi->logdev) { @@ -1102,7 +1104,8 @@ int lmLogOpen(struct super_block *sb) bdev_handle = bdev_open_by_dev(sbi->logdev, BLK_OPEN_READ | BLK_OPEN_WRITE, log, NULL); - if (IS_ERR(bdev_handle)) { + printk("%p, %s\n", bdev_handle, __func__); + if (IS_ERR_OR_NULL(bdev_handle)) { rc = PTR_ERR(bdev_handle); goto free; } @@ -1141,6 +1144,7 @@ int lmLogOpen(struct super_block *sb) lbmLogShutdown(log); close: /* close external log device */ + printk("%p, %p, %s\n", log, bdev_handle, __func__); bdev_release(bdev_handle); free: /* free log descriptor */ @@ -1163,6 +1167,7 @@ static int open_inline_log(struct super_block *sb) set_bit(log_INLINELOG, &log->flag); log->bdev_handle = sb->s_bdev_handle; + printk("%p, %s\n", log->bdev_handle, __func__); log->base = addressPXD(&JFS_SBI(sb)->logpxd); log->size = lengthPXD(&JFS_SBI(sb)->logpxd) >> (L2LOGPSIZE - sb->s_blocksize_bits); @@ -1485,6 +1490,7 @@ int lmLogClose(struct super_block *sb) bdev_handle = log->bdev_handle; rc = lmLogShutdown(log); + printk("%p, %p, %s\n", log, bdev_handle, __func__); bdev_release(bdev_handle); kfree(log); @@ -2110,10 +2116,15 @@ static void lbmStartIO(struct lbuf * bp) { struct bio *bio; struct jfs_log *log = bp->l_log; + struct block_device *bdev = NULL; jfs_info("lbmStartIO"); - bio = bio_alloc(log->bdev_handle->bdev, 1, REQ_OP_WRITE | REQ_SYNC, + printk("%d, %p, %s\n", log->no_integrity, log->bdev_handle, __func__); + if (!log->no_integrity) + bdev = log->bdev_handle->bdev; + + bio = bio_alloc(bdev, 1, REQ_OP_WRITE | REQ_SYNC, GFP_NOFS); bio->bi_iter.bi_sector = bp->l_blkno << (log->l2bsize - 9); __bio_add_page(bio, bp->l_page, LOGPSIZE, bp->l_offset);