diff --git a/block/bdev.c b/block/bdev.c index 4628dcb1da8a..80ce9e10828e 100644 --- a/block/bdev.c +++ b/block/bdev.c @@ -839,8 +839,9 @@ struct bdev_handle *bdev_open_by_dev(dev_t dev, blk_mode_t mode, void *holder, return ERR_PTR(-ENOMEM); bdev = blkdev_get_by_dev(dev, mode, holder, hops); if (IS_ERR(bdev)) { + printk("%p, %s\n", handle, __func__); kfree(handle); - return ERR_CAST(bdev); + return NULL; } handle->bdev = bdev; handle->holder = holder; @@ -949,6 +950,7 @@ EXPORT_SYMBOL(blkdev_put); void bdev_release(struct bdev_handle *handle) { + printk("%p, %s\n", handle, __func__); blkdev_put(handle->bdev, handle->holder); kfree(handle); } diff --git a/fs/jfs/jfs_logmgr.c b/fs/jfs/jfs_logmgr.c index c911d838b8ec..098bf3330590 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); @@ -2113,6 +2119,7 @@ static void lbmStartIO(struct lbuf * bp) jfs_info("lbmStartIO"); + printk("%p, %s\n", log->bdev_handle, __func__); bio = bio_alloc(log->bdev_handle->bdev, 1, REQ_OP_WRITE | REQ_SYNC, GFP_NOFS); bio->bi_iter.bi_sector = bp->l_blkno << (log->l2bsize - 9); diff --git a/fs/super.c b/fs/super.c index 79f8125da573..e157e260f9e4 100644 --- a/fs/super.c +++ b/fs/super.c @@ -1652,6 +1652,7 @@ void kill_block_super(struct super_block *sb) generic_shutdown_super(sb); if (bdev) { sync_blockdev(bdev); + printk("%p, %s\n", sb->s_bdev_handle, __func__); bdev_release(sb->s_bdev_handle); } }