From: Jan Kara <jack@suse.cz> To: <linux-fsdevel@vger.kernel.org> Cc: <linux-block@vger.kernel.org>, Christoph Hellwig <hch@infradead.org>, Jan Kara <jack@suse.cz>, Gao Xiang <xiang@kernel.org>, Chao Yu <chao@kernel.org>, linux-erofs@lists.ozlabs.org, Gao Xiang <hsiangkao@linux.alibaba.com> Subject: [PATCH 21/29] erofs: Convert to use bdev_open_by_path() Date: Fri, 11 Aug 2023 13:04:52 +0200 [thread overview] Message-ID: <20230811110504.27514-21-jack@suse.cz> (raw) In-Reply-To: <20230810171429.31759-1-jack@suse.cz> Convert erofs to use bdev_open_by_path() and pass the handle around. CC: Gao Xiang <xiang@kernel.org> CC: Chao Yu <chao@kernel.org> CC: linux-erofs@lists.ozlabs.org Acked-by: Gao Xiang <hsiangkao@linux.alibaba.com> Signed-off-by: Jan Kara <jack@suse.cz> --- fs/erofs/data.c | 4 ++-- fs/erofs/internal.h | 2 +- fs/erofs/super.c | 20 ++++++++++---------- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/fs/erofs/data.c b/fs/erofs/data.c index db5e4b7636ec..1fa60cfff267 100644 --- a/fs/erofs/data.c +++ b/fs/erofs/data.c @@ -222,7 +222,7 @@ int erofs_map_dev(struct super_block *sb, struct erofs_map_dev *map) up_read(&devs->rwsem); return 0; } - map->m_bdev = dif->bdev; + map->m_bdev = dif->bdev_handle->bdev; map->m_daxdev = dif->dax_dev; map->m_dax_part_off = dif->dax_part_off; map->m_fscache = dif->fscache; @@ -240,7 +240,7 @@ int erofs_map_dev(struct super_block *sb, struct erofs_map_dev *map) if (map->m_pa >= startoff && map->m_pa < startoff + length) { map->m_pa -= startoff; - map->m_bdev = dif->bdev; + map->m_bdev = dif->bdev_handle->bdev; map->m_daxdev = dif->dax_dev; map->m_dax_part_off = dif->dax_part_off; map->m_fscache = dif->fscache; diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h index 36e32fa542f0..fabd3bb0c194 100644 --- a/fs/erofs/internal.h +++ b/fs/erofs/internal.h @@ -47,7 +47,7 @@ typedef u32 erofs_blk_t; struct erofs_device_info { char *path; struct erofs_fscache *fscache; - struct block_device *bdev; + struct bdev_handle *bdev_handle; struct dax_device *dax_dev; u64 dax_part_off; diff --git a/fs/erofs/super.c b/fs/erofs/super.c index 9d6a3c6158bd..ce163b456d4a 100644 --- a/fs/erofs/super.c +++ b/fs/erofs/super.c @@ -230,7 +230,7 @@ static int erofs_init_device(struct erofs_buf *buf, struct super_block *sb, struct erofs_sb_info *sbi = EROFS_SB(sb); struct erofs_fscache *fscache; struct erofs_deviceslot *dis; - struct block_device *bdev; + struct bdev_handle *bdev_handle; void *ptr; ptr = erofs_read_metabuf(buf, sb, erofs_blknr(sb, *pos), EROFS_KMAP); @@ -254,13 +254,13 @@ static int erofs_init_device(struct erofs_buf *buf, struct super_block *sb, return PTR_ERR(fscache); dif->fscache = fscache; } else if (!sbi->devs->flatdev) { - bdev = blkdev_get_by_path(dif->path, BLK_OPEN_READ, sb->s_type, - NULL); - if (IS_ERR(bdev)) - return PTR_ERR(bdev); - dif->bdev = bdev; - dif->dax_dev = fs_dax_get_by_bdev(bdev, &dif->dax_part_off, - NULL, NULL); + bdev_handle = bdev_open_by_path(dif->path, BLK_OPEN_READ, + sb->s_type, NULL); + if (IS_ERR(bdev_handle)) + return PTR_ERR(bdev_handle); + dif->bdev_handle = bdev_handle; + dif->dax_dev = fs_dax_get_by_bdev(bdev_handle->bdev, + &dif->dax_part_off, NULL, NULL); } dif->blocks = le32_to_cpu(dis->blocks); @@ -815,8 +815,8 @@ static int erofs_release_device_info(int id, void *ptr, void *data) struct erofs_device_info *dif = ptr; fs_put_dax(dif->dax_dev, NULL); - if (dif->bdev) - blkdev_put(dif->bdev, &erofs_fs_type); + if (dif->bdev_handle) + bdev_release(dif->bdev_handle); erofs_fscache_unregister_cookie(dif->fscache); dif->fscache = NULL; kfree(dif->path); -- 2.35.3
WARNING: multiple messages have this Message-ID (diff)
From: Jan Kara <jack@suse.cz> To: <linux-fsdevel@vger.kernel.org> Cc: Christoph Hellwig <hch@infradead.org>, Jan Kara <jack@suse.cz>, linux-block@vger.kernel.org, Gao Xiang <hsiangkao@linux.alibaba.com>, linux-erofs@lists.ozlabs.org Subject: [PATCH 21/29] erofs: Convert to use bdev_open_by_path() Date: Fri, 11 Aug 2023 13:04:52 +0200 [thread overview] Message-ID: <20230811110504.27514-21-jack@suse.cz> (raw) In-Reply-To: <20230810171429.31759-1-jack@suse.cz> Convert erofs to use bdev_open_by_path() and pass the handle around. CC: Gao Xiang <xiang@kernel.org> CC: Chao Yu <chao@kernel.org> CC: linux-erofs@lists.ozlabs.org Acked-by: Gao Xiang <hsiangkao@linux.alibaba.com> Signed-off-by: Jan Kara <jack@suse.cz> --- fs/erofs/data.c | 4 ++-- fs/erofs/internal.h | 2 +- fs/erofs/super.c | 20 ++++++++++---------- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/fs/erofs/data.c b/fs/erofs/data.c index db5e4b7636ec..1fa60cfff267 100644 --- a/fs/erofs/data.c +++ b/fs/erofs/data.c @@ -222,7 +222,7 @@ int erofs_map_dev(struct super_block *sb, struct erofs_map_dev *map) up_read(&devs->rwsem); return 0; } - map->m_bdev = dif->bdev; + map->m_bdev = dif->bdev_handle->bdev; map->m_daxdev = dif->dax_dev; map->m_dax_part_off = dif->dax_part_off; map->m_fscache = dif->fscache; @@ -240,7 +240,7 @@ int erofs_map_dev(struct super_block *sb, struct erofs_map_dev *map) if (map->m_pa >= startoff && map->m_pa < startoff + length) { map->m_pa -= startoff; - map->m_bdev = dif->bdev; + map->m_bdev = dif->bdev_handle->bdev; map->m_daxdev = dif->dax_dev; map->m_dax_part_off = dif->dax_part_off; map->m_fscache = dif->fscache; diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h index 36e32fa542f0..fabd3bb0c194 100644 --- a/fs/erofs/internal.h +++ b/fs/erofs/internal.h @@ -47,7 +47,7 @@ typedef u32 erofs_blk_t; struct erofs_device_info { char *path; struct erofs_fscache *fscache; - struct block_device *bdev; + struct bdev_handle *bdev_handle; struct dax_device *dax_dev; u64 dax_part_off; diff --git a/fs/erofs/super.c b/fs/erofs/super.c index 9d6a3c6158bd..ce163b456d4a 100644 --- a/fs/erofs/super.c +++ b/fs/erofs/super.c @@ -230,7 +230,7 @@ static int erofs_init_device(struct erofs_buf *buf, struct super_block *sb, struct erofs_sb_info *sbi = EROFS_SB(sb); struct erofs_fscache *fscache; struct erofs_deviceslot *dis; - struct block_device *bdev; + struct bdev_handle *bdev_handle; void *ptr; ptr = erofs_read_metabuf(buf, sb, erofs_blknr(sb, *pos), EROFS_KMAP); @@ -254,13 +254,13 @@ static int erofs_init_device(struct erofs_buf *buf, struct super_block *sb, return PTR_ERR(fscache); dif->fscache = fscache; } else if (!sbi->devs->flatdev) { - bdev = blkdev_get_by_path(dif->path, BLK_OPEN_READ, sb->s_type, - NULL); - if (IS_ERR(bdev)) - return PTR_ERR(bdev); - dif->bdev = bdev; - dif->dax_dev = fs_dax_get_by_bdev(bdev, &dif->dax_part_off, - NULL, NULL); + bdev_handle = bdev_open_by_path(dif->path, BLK_OPEN_READ, + sb->s_type, NULL); + if (IS_ERR(bdev_handle)) + return PTR_ERR(bdev_handle); + dif->bdev_handle = bdev_handle; + dif->dax_dev = fs_dax_get_by_bdev(bdev_handle->bdev, + &dif->dax_part_off, NULL, NULL); } dif->blocks = le32_to_cpu(dis->blocks); @@ -815,8 +815,8 @@ static int erofs_release_device_info(int id, void *ptr, void *data) struct erofs_device_info *dif = ptr; fs_put_dax(dif->dax_dev, NULL); - if (dif->bdev) - blkdev_put(dif->bdev, &erofs_fs_type); + if (dif->bdev_handle) + bdev_release(dif->bdev_handle); erofs_fscache_unregister_cookie(dif->fscache); dif->fscache = NULL; kfree(dif->path); -- 2.35.3
next prev parent reply other threads:[~2023-08-11 11:05 UTC|newest] Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-08-11 11:04 [PATCH v2 0/29] block: Make blkdev_get_by_*() return handle Jan Kara 2023-08-11 11:04 ` Jan Kara 2023-08-11 11:04 ` [dm-devel] " Jan Kara 2023-08-11 11:04 ` Jan Kara 2023-08-11 11:04 ` Jan Kara 2023-08-11 11:04 ` [f2fs-dev] " Jan Kara 2023-08-11 11:04 ` [PATCH 01/29] block: Provide bdev_open_* functions Jan Kara 2023-08-11 11:04 ` [PATCH 02/29] block: Use bdev_open_by_dev() in blkdev_open() Jan Kara 2023-08-11 12:25 ` Christoph Hellwig 2023-08-14 13:51 ` Jan Kara 2023-08-25 1:14 ` Al Viro 2023-08-11 11:04 ` [PATCH 03/29] block: Use bdev_open_by_dev() in disk_scan_partitions() and blkdev_bszset() Jan Kara 2023-08-11 11:04 ` [PATCH 04/29] drdb: Convert to use bdev_open_by_path() Jan Kara 2023-08-11 11:04 ` [PATCH 05/29] pktcdvd: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 06/29] rnbd-srv: Convert to use bdev_open_by_path() Jan Kara 2023-08-11 11:04 ` [PATCH 07/29] xen/blkback: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 08/29] zram: Convert to use bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 09/29] bcache: Convert to bdev_open_by_path() Jan Kara 2023-08-21 1:06 ` Eric Wheeler 2023-08-21 17:50 ` Jan Kara 2023-08-21 18:54 ` Eric Wheeler 2023-08-23 10:10 ` Coly Li 2023-08-11 11:04 ` [PATCH 10/29] dm: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [dm-devel] " Jan Kara 2023-08-11 11:04 ` [PATCH 11/29] md: " Jan Kara 2023-08-13 15:54 ` Song Liu 2023-08-14 13:37 ` Jan Kara 2023-08-11 11:04 ` [PATCH 12/29] mtd: block2mtd: Convert to bdev_open_by_dev/path() Jan Kara 2023-08-11 11:04 ` Jan Kara 2023-08-11 11:04 ` [PATCH 13/29] nvmet: Convert to bdev_open_by_path() Jan Kara 2023-08-11 11:04 ` [PATCH 14/29] s390/dasd: " Jan Kara 2023-08-11 11:04 ` [PATCH 15/29] scsi: target: " Jan Kara 2023-08-11 11:04 ` [PATCH 16/29] PM: hibernate: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 16:57 ` Rafael J. Wysocki 2023-08-11 11:04 ` [PATCH 17/29] PM: hibernate: Drop unused snapshot_test argument Jan Kara 2023-08-11 16:58 ` Rafael J. Wysocki 2023-08-11 11:04 ` [PATCH 18/29] mm/swap: Convert to use bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 19/29] fs: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 20/29] btrfs: Convert to bdev_open_by_path() Jan Kara 2023-08-11 11:04 ` Jan Kara [this message] 2023-08-11 11:04 ` [PATCH 21/29] erofs: Convert to use bdev_open_by_path() Jan Kara 2023-08-11 11:04 ` [PATCH 22/29] ext4: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 23/29] f2fs: Convert to bdev_open_by_dev/path() Jan Kara 2023-08-11 11:04 ` [f2fs-dev] " Jan Kara 2023-08-11 11:04 ` [PATCH 24/29] jfs: Convert to bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 25/29] nfs/blocklayout: Convert to use bdev_open_by_dev/path() Jan Kara 2023-08-11 11:04 ` [PATCH 26/29] ocfs2: Convert to use bdev_open_by_dev() Jan Kara 2023-08-11 11:04 ` [PATCH 27/29] reiserfs: Convert to bdev_open_by_dev/path() Jan Kara 2023-08-11 11:04 ` Jan Kara 2023-08-11 11:04 ` [PATCH 28/29] xfs: Convert to bdev_open_by_path() Jan Kara [not found] ` <CGME20230814102748eucas1p269b8a53ed09fae1eb57dce3d2a7de752@eucas1p2.samsung.com> 2023-08-14 10:27 ` Daniel Gomez 2023-08-14 13:43 ` Jan Kara 2023-08-11 11:05 ` [PATCH 29/29] block: Remove blkdev_get_by_*() functions Jan Kara 2023-08-11 12:27 ` [PATCH v2 0/29] block: Make blkdev_get_by_*() return handle Christoph Hellwig 2023-08-11 12:27 ` Christoph Hellwig 2023-08-11 12:27 ` Christoph Hellwig 2023-08-11 12:27 ` [dm-devel] " Christoph Hellwig 2023-08-11 12:27 ` Christoph Hellwig 2023-08-11 12:27 ` [f2fs-dev] " Christoph Hellwig 2023-08-25 1:58 ` Al Viro 2023-08-25 1:58 ` Al Viro 2023-08-25 1:58 ` Al Viro 2023-08-25 1:58 ` [dm-devel] " Al Viro 2023-08-25 1:58 ` [f2fs-dev] " Al Viro 2023-08-25 1:58 ` Al Viro 2023-08-25 13:47 ` Jan Kara 2023-08-25 13:47 ` Jan Kara 2023-08-25 13:47 ` [dm-devel] " Jan Kara 2023-08-25 13:47 ` Jan Kara 2023-08-25 13:47 ` Jan Kara 2023-08-25 13:47 ` [f2fs-dev] " Jan Kara 2023-08-26 2:28 ` Al Viro 2023-08-26 2:28 ` Al Viro 2023-08-26 2:28 ` [dm-devel] " Al Viro 2023-08-26 2:28 ` Al Viro 2023-08-26 2:28 ` Al Viro 2023-08-26 2:28 ` [f2fs-dev] " Al Viro 2023-08-28 14:27 ` Christoph Hellwig 2023-08-28 14:27 ` Christoph Hellwig 2023-08-28 14:27 ` [dm-devel] " Christoph Hellwig 2023-08-28 14:27 ` Christoph Hellwig 2023-08-28 14:27 ` Christoph Hellwig 2023-08-28 14:27 ` [f2fs-dev] " Christoph Hellwig 2023-08-28 13:20 ` Christian Brauner 2023-08-28 13:20 ` Christian Brauner 2023-08-28 13:20 ` [dm-devel] " Christian Brauner 2023-08-28 13:20 ` Christian Brauner 2023-08-28 13:20 ` Christian Brauner 2023-08-28 13:20 ` [f2fs-dev] " Christian Brauner 2023-08-28 14:22 ` Christoph Hellwig 2023-08-28 14:22 ` Christoph Hellwig 2023-08-28 14:22 ` [dm-devel] " Christoph Hellwig 2023-08-28 14:22 ` Christoph Hellwig 2023-08-28 14:22 ` Christoph Hellwig 2023-08-28 14:22 ` [f2fs-dev] " Christoph Hellwig 2023-08-23 10:48 [PATCH v3 " Jan Kara 2023-08-23 10:48 ` [PATCH 21/29] erofs: Convert to use bdev_open_by_path() Jan Kara 2023-08-23 10:48 ` Jan Kara 2023-08-25 12:27 ` Christian Brauner 2023-08-25 12:27 ` Christian Brauner 2023-09-27 9:34 ` Jan Kara 2023-09-27 9:34 ` Jan Kara
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230811110504.27514-21-jack@suse.cz \ --to=jack@suse.cz \ --cc=chao@kernel.org \ --cc=hch@infradead.org \ --cc=hsiangkao@linux.alibaba.com \ --cc=linux-block@vger.kernel.org \ --cc=linux-erofs@lists.ozlabs.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=xiang@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.