* [dm-devel] don't use ->bd_inode to access the block device size v2
@ 2021-10-15 13:26 Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
` (29 more replies)
0 siblings, 30 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Hi Jens,
various drivers currently poke directy at the block device inode, which
is a bit of a mess. This series cleans up the places that read the
block device size to use the proper helpers. I have separate patches
for many of the other bd_inode uses, but this series is already big
enough as-is,
Changes since v1:
- move SECTOR_SIZE & co
- use SECTOR_SHIFT in sb_bdev_nr_blocks
- add a bdev_nr_bytes helper
- reuse a variable in the SCSI target code
- drop the block2mtd patch, a bigger rewrite for that code is pending
Diffstat:
block/fops.c | 2 +-
drivers/block/drbd/drbd_int.h | 3 +--
drivers/md/bcache/super.c | 2 +-
drivers/md/bcache/util.h | 4 ----
drivers/md/bcache/writeback.c | 2 +-
drivers/md/dm-bufio.c | 2 +-
drivers/md/dm-cache-metadata.c | 2 +-
drivers/md/dm-cache-target.c | 2 +-
drivers/md/dm-clone-target.c | 2 +-
drivers/md/dm-dust.c | 5 ++---
drivers/md/dm-ebs-target.c | 2 +-
drivers/md/dm-era-target.c | 2 +-
drivers/md/dm-exception-store.h | 2 +-
drivers/md/dm-flakey.c | 3 +--
drivers/md/dm-integrity.c | 6 +++---
drivers/md/dm-linear.c | 3 +--
drivers/md/dm-log-writes.c | 4 ++--
drivers/md/dm-log.c | 2 +-
drivers/md/dm-mpath.c | 2 +-
drivers/md/dm-raid.c | 6 +++---
drivers/md/dm-switch.c | 2 +-
drivers/md/dm-table.c | 3 +--
drivers/md/dm-thin-metadata.c | 2 +-
drivers/md/dm-thin.c | 2 +-
drivers/md/dm-verity-target.c | 3 +--
drivers/md/dm-writecache.c | 2 +-
drivers/md/dm-zoned-target.c | 2 +-
drivers/md/md.c | 26 +++++++++++---------------
drivers/nvme/target/io-cmd-bdev.c | 4 ++--
drivers/target/target_core_iblock.c | 4 ++--
fs/affs/super.c | 2 +-
fs/btrfs/dev-replace.c | 3 +--
fs/btrfs/disk-io.c | 2 +-
fs/btrfs/ioctl.c | 4 ++--
fs/btrfs/volumes.c | 8 ++++----
fs/buffer.c | 4 ++--
fs/cramfs/inode.c | 2 +-
fs/ext4/super.c | 2 +-
fs/fat/inode.c | 5 +----
fs/hfs/mdb.c | 2 +-
fs/hfsplus/wrapper.c | 2 +-
fs/jfs/resize.c | 5 ++---
fs/jfs/super.c | 5 ++---
fs/nfs/blocklayout/dev.c | 4 ++--
fs/nilfs2/ioctl.c | 2 +-
fs/nilfs2/super.c | 2 +-
fs/nilfs2/the_nilfs.c | 2 +-
fs/ntfs/super.c | 8 +++-----
fs/ntfs3/super.c | 3 +--
fs/pstore/blk.c | 8 +++-----
fs/reiserfs/super.c | 8 ++------
fs/squashfs/super.c | 5 +++--
fs/udf/lowlevel.c | 5 ++---
fs/udf/super.c | 9 +++------
include/linux/blk_types.h | 17 +++++++++++++++++
include/linux/blkdev.h | 17 -----------------
include/linux/genhd.h | 13 ++++++++++++-
57 files changed, 118 insertions(+), 139 deletions(-)
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:44 ` Jan Kara
` (2 more replies)
2021-10-15 13:26 ` [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper Christoph Hellwig
` (28 subsequent siblings)
29 siblings, 3 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Ensure these are always available for inlines in the various block layer
headers.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/linux/blk_types.h | 17 +++++++++++++++++
include/linux/blkdev.h | 17 -----------------
2 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h
index 3b967053e9f5a..dc8da0c7fa09b 100644
--- a/include/linux/blk_types.h
+++ b/include/linux/blk_types.h
@@ -20,6 +20,23 @@ struct cgroup_subsys_state;
typedef void (bio_end_io_t) (struct bio *);
struct bio_crypt_ctx;
+/*
+ * The basic unit of block I/O is a sector. It is used in a number of contexts
+ * in Linux (blk, bio, genhd). The size of one sector is 512 = 2**9
+ * bytes. Variables of type sector_t represent an offset or size that is a
+ * multiple of 512 bytes. Hence these two constants.
+ */
+#ifndef SECTOR_SHIFT
+#define SECTOR_SHIFT 9
+#endif
+#ifndef SECTOR_SIZE
+#define SECTOR_SIZE (1 << SECTOR_SHIFT)
+#endif
+
+#define PAGE_SECTORS_SHIFT (PAGE_SHIFT - SECTOR_SHIFT)
+#define PAGE_SECTORS (1 << PAGE_SECTORS_SHIFT)
+#define SECTOR_MASK (PAGE_SECTORS - 1)
+
struct block_device {
sector_t bd_start_sect;
struct disk_stats __percpu *bd_stats;
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 17705c970d7e1..161496d1aced0 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -571,23 +571,6 @@ static inline struct request_queue *bdev_get_queue(struct block_device *bdev)
return bdev->bd_disk->queue; /* this is never NULL */
}
-/*
- * The basic unit of block I/O is a sector. It is used in a number of contexts
- * in Linux (blk, bio, genhd). The size of one sector is 512 = 2**9
- * bytes. Variables of type sector_t represent an offset or size that is a
- * multiple of 512 bytes. Hence these two constants.
- */
-#ifndef SECTOR_SHIFT
-#define SECTOR_SHIFT 9
-#endif
-#ifndef SECTOR_SIZE
-#define SECTOR_SIZE (1 << SECTOR_SHIFT)
-#endif
-
-#define PAGE_SECTORS_SHIFT (PAGE_SHIFT - SECTOR_SHIFT)
-#define PAGE_SECTORS (1 << PAGE_SECTORS_SHIFT)
-#define SECTOR_MASK (PAGE_SECTORS - 1)
-
#ifdef CONFIG_BLK_DEV_ZONED
/* Helper to convert BLK_ZONE_ZONE_XXX to its string format XXX */
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:35 ` Matthew Wilcox
2021-10-15 14:37 ` Anton Altaparmakov
2021-10-15 13:26 ` [dm-devel] [PATCH 03/30] bcache: remove bdev_sectors Christoph Hellwig
` (27 subsequent siblings)
29 siblings, 2 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Add a helpe to query the size of a block device in bytes. This
will be used to remove open coded access to ->bd_inode.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/linux/genhd.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index 082a3e5fd8fa1..f67db3c5a04b3 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -235,9 +235,14 @@ static inline sector_t get_start_sect(struct block_device *bdev)
return bdev->bd_start_sect;
}
+static inline sector_t bdev_nr_bytes(struct block_device *bdev)
+{
+ return i_size_read(bdev->bd_inode);
+}
+
static inline sector_t bdev_nr_sectors(struct block_device *bdev)
{
- return i_size_read(bdev->bd_inode) >> 9;
+ return bdev_nr_bytes(bdev) >> SECTOR_SHIFT;
}
static inline sector_t get_capacity(struct gendisk *disk)
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 03/30] bcache: remove bdev_sectors
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-18 5:46 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 04/30] drbd: use bdev_nr_sectors instead of open coding it Christoph Hellwig
` (26 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the equivalent block layer helper instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Coly Li <colyli@suse.de>
---
drivers/md/bcache/super.c | 2 +-
drivers/md/bcache/util.h | 4 ----
drivers/md/bcache/writeback.c | 2 +-
3 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c
index f2874c77ff797..4f89985abe4b7 100644
--- a/drivers/md/bcache/super.c
+++ b/drivers/md/bcache/super.c
@@ -1002,7 +1002,7 @@ static void calc_cached_dev_sectors(struct cache_set *c)
struct cached_dev *dc;
list_for_each_entry(dc, &c->cached_devs, list)
- sectors += bdev_sectors(dc->bdev);
+ sectors += bdev_nr_sectors(dc->bdev);
c->cached_dev_sectors = sectors;
}
diff --git a/drivers/md/bcache/util.h b/drivers/md/bcache/util.h
index b64460a762677..a7da7930a7fda 100644
--- a/drivers/md/bcache/util.h
+++ b/drivers/md/bcache/util.h
@@ -584,8 +584,4 @@ static inline unsigned int fract_exp_two(unsigned int x,
void bch_bio_map(struct bio *bio, void *base);
int bch_bio_alloc_pages(struct bio *bio, gfp_t gfp_mask);
-static inline sector_t bdev_sectors(struct block_device *bdev)
-{
- return bdev->bd_inode->i_size >> 9;
-}
#endif /* _BCACHE_UTIL_H */
diff --git a/drivers/md/bcache/writeback.c b/drivers/md/bcache/writeback.c
index 8120da278161e..c7560f66dca88 100644
--- a/drivers/md/bcache/writeback.c
+++ b/drivers/md/bcache/writeback.c
@@ -45,7 +45,7 @@ static uint64_t __calc_target_rate(struct cached_dev *dc)
* backing volume uses about 2% of the cache for dirty data.
*/
uint32_t bdev_share =
- div64_u64(bdev_sectors(dc->bdev) << WRITEBACK_SHARE_SHIFT,
+ div64_u64(bdev_nr_sectors(dc->bdev) << WRITEBACK_SHARE_SHIFT,
c->cached_dev_sectors);
uint64_t cache_dirty_target =
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 04/30] drbd: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (2 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 03/30] bcache: remove bdev_sectors Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 18:00 ` Lee Duncan
2021-10-15 13:26 ` [dm-devel] [PATCH 05/30] dm: use bdev_nr_sectors and bdev_nr_bytes instead of open coding them Christoph Hellwig
` (25 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
---
drivers/block/drbd/drbd_int.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h
index 5d9181382ce19..75fda53eed8cf 100644
--- a/drivers/block/drbd/drbd_int.h
+++ b/drivers/block/drbd/drbd_int.h
@@ -1826,8 +1826,7 @@ static inline sector_t drbd_md_last_sector(struct drbd_backing_dev *bdev)
/* Returns the number of 512 byte sectors of the device */
static inline sector_t drbd_get_capacity(struct block_device *bdev)
{
- /* return bdev ? get_capacity(bdev->bd_disk) : 0; */
- return bdev ? i_size_read(bdev->bd_inode) >> 9 : 0;
+ return bdev ? bdev_nr_sectors(bdev) : 0;
}
/**
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 05/30] dm: use bdev_nr_sectors and bdev_nr_bytes instead of open coding them
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (3 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 04/30] drbd: use bdev_nr_sectors instead of open coding it Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 06/30] md: use bdev_nr_sectors instead of open coding it Christoph Hellwig
` (24 subsequent siblings)
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helpers to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Mike Snitzer <snitzer@redhat.com>
---
drivers/md/dm-bufio.c | 2 +-
drivers/md/dm-cache-metadata.c | 2 +-
drivers/md/dm-cache-target.c | 2 +-
drivers/md/dm-clone-target.c | 2 +-
drivers/md/dm-dust.c | 5 ++---
drivers/md/dm-ebs-target.c | 2 +-
drivers/md/dm-era-target.c | 2 +-
drivers/md/dm-exception-store.h | 2 +-
drivers/md/dm-flakey.c | 3 +--
drivers/md/dm-integrity.c | 6 +++---
drivers/md/dm-linear.c | 3 +--
drivers/md/dm-log-writes.c | 4 ++--
drivers/md/dm-log.c | 2 +-
drivers/md/dm-mpath.c | 2 +-
drivers/md/dm-raid.c | 6 +++---
drivers/md/dm-switch.c | 2 +-
drivers/md/dm-table.c | 3 +--
drivers/md/dm-thin-metadata.c | 2 +-
drivers/md/dm-thin.c | 2 +-
drivers/md/dm-verity-target.c | 3 +--
drivers/md/dm-writecache.c | 2 +-
drivers/md/dm-zoned-target.c | 2 +-
22 files changed, 28 insertions(+), 33 deletions(-)
diff --git a/drivers/md/dm-bufio.c b/drivers/md/dm-bufio.c
index 50f3e673729c3..104ebc1f08dcc 100644
--- a/drivers/md/dm-bufio.c
+++ b/drivers/md/dm-bufio.c
@@ -1525,7 +1525,7 @@ EXPORT_SYMBOL_GPL(dm_bufio_get_block_size);
sector_t dm_bufio_get_device_size(struct dm_bufio_client *c)
{
- sector_t s = i_size_read(c->bdev->bd_inode) >> SECTOR_SHIFT;
+ sector_t s = bdev_nr_sectors(c->bdev);
if (s >= c->start)
s -= c->start;
else
diff --git a/drivers/md/dm-cache-metadata.c b/drivers/md/dm-cache-metadata.c
index 89a73204dbf47..2874f222c3138 100644
--- a/drivers/md/dm-cache-metadata.c
+++ b/drivers/md/dm-cache-metadata.c
@@ -334,7 +334,7 @@ static int __write_initial_superblock(struct dm_cache_metadata *cmd)
int r;
struct dm_block *sblock;
struct cache_disk_superblock *disk_super;
- sector_t bdev_size = i_size_read(cmd->bdev->bd_inode) >> SECTOR_SHIFT;
+ sector_t bdev_size = bdev_nr_sectors(cmd->bdev);
/* FIXME: see if we can lose the max sectors limit */
if (bdev_size > DM_CACHE_METADATA_MAX_SECTORS)
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
index bdd500447dea2..447d030036d18 100644
--- a/drivers/md/dm-cache-target.c
+++ b/drivers/md/dm-cache-target.c
@@ -1940,7 +1940,7 @@ static void cache_dtr(struct dm_target *ti)
static sector_t get_dev_size(struct dm_dev *dev)
{
- return i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT;
+ return bdev_nr_sectors(dev->bdev);
}
/*----------------------------------------------------------------*/
diff --git a/drivers/md/dm-clone-target.c b/drivers/md/dm-clone-target.c
index 84dbe08ad2053..e4bb2fde1b54f 100644
--- a/drivers/md/dm-clone-target.c
+++ b/drivers/md/dm-clone-target.c
@@ -1514,7 +1514,7 @@ static void clone_status(struct dm_target *ti, status_type_t type,
static sector_t get_dev_size(struct dm_dev *dev)
{
- return i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT;
+ return bdev_nr_sectors(dev->bdev);
}
/*---------------------------------------------------------------------------*/
diff --git a/drivers/md/dm-dust.c b/drivers/md/dm-dust.c
index 3163e2b1418e7..03672204b0e38 100644
--- a/drivers/md/dm-dust.c
+++ b/drivers/md/dm-dust.c
@@ -415,7 +415,7 @@ static int dust_message(struct dm_target *ti, unsigned int argc, char **argv,
char *result, unsigned int maxlen)
{
struct dust_device *dd = ti->private;
- sector_t size = i_size_read(dd->dev->bdev->bd_inode) >> SECTOR_SHIFT;
+ sector_t size = bdev_nr_sectors(dd->dev->bdev);
bool invalid_msg = false;
int r = -EINVAL;
unsigned long long tmp, block;
@@ -544,8 +544,7 @@ static int dust_prepare_ioctl(struct dm_target *ti, struct block_device **bdev)
/*
* Only pass ioctls through if the device sizes match exactly.
*/
- if (dd->start ||
- ti->len != i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT)
+ if (dd->start || ti->len != bdev_nr_sectors(dev->bdev))
return 1;
return 0;
diff --git a/drivers/md/dm-ebs-target.c b/drivers/md/dm-ebs-target.c
index d25989660a768..7ce5d509b9403 100644
--- a/drivers/md/dm-ebs-target.c
+++ b/drivers/md/dm-ebs-target.c
@@ -416,7 +416,7 @@ static int ebs_prepare_ioctl(struct dm_target *ti, struct block_device **bdev)
* Only pass ioctls through if the device sizes match exactly.
*/
*bdev = dev->bdev;
- return !!(ec->start || ti->len != i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT);
+ return !!(ec->start || ti->len != bdev_nr_sectors(dev->bdev));
}
static void ebs_io_hints(struct dm_target *ti, struct queue_limits *limits)
diff --git a/drivers/md/dm-era-target.c b/drivers/md/dm-era-target.c
index 2a78f68741431..1f6bf152b3c74 100644
--- a/drivers/md/dm-era-target.c
+++ b/drivers/md/dm-era-target.c
@@ -1681,7 +1681,7 @@ static int era_message(struct dm_target *ti, unsigned argc, char **argv,
static sector_t get_dev_size(struct dm_dev *dev)
{
- return i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT;
+ return bdev_nr_sectors(dev->bdev);
}
static int era_iterate_devices(struct dm_target *ti,
diff --git a/drivers/md/dm-exception-store.h b/drivers/md/dm-exception-store.h
index 3f4139ac1f602..b5f20eba36415 100644
--- a/drivers/md/dm-exception-store.h
+++ b/drivers/md/dm-exception-store.h
@@ -168,7 +168,7 @@ static inline void dm_consecutive_chunk_count_dec(struct dm_exception *e)
*/
static inline sector_t get_dev_size(struct block_device *bdev)
{
- return i_size_read(bdev->bd_inode) >> SECTOR_SHIFT;
+ return bdev_nr_sectors(bdev);
}
static inline chunk_t sector_to_chunk(struct dm_exception_store *store,
diff --git a/drivers/md/dm-flakey.c b/drivers/md/dm-flakey.c
index 4b94ffe6f2d4f..345229d7e59c1 100644
--- a/drivers/md/dm-flakey.c
+++ b/drivers/md/dm-flakey.c
@@ -456,8 +456,7 @@ static int flakey_prepare_ioctl(struct dm_target *ti, struct block_device **bdev
/*
* Only pass ioctls through if the device sizes match exactly.
*/
- if (fc->start ||
- ti->len != i_size_read((*bdev)->bd_inode) >> SECTOR_SHIFT)
+ if (fc->start || ti->len != bdev_nr_sectors((*bdev)))
return 1;
return 0;
}
diff --git a/drivers/md/dm-integrity.c b/drivers/md/dm-integrity.c
index dc03b70f6e65c..d0f788e72abf9 100644
--- a/drivers/md/dm-integrity.c
+++ b/drivers/md/dm-integrity.c
@@ -4113,11 +4113,11 @@ static int dm_integrity_ctr(struct dm_target *ti, unsigned argc, char **argv)
}
}
- ic->data_device_sectors = i_size_read(ic->dev->bdev->bd_inode) >> SECTOR_SHIFT;
+ ic->data_device_sectors = bdev_nr_sectors(ic->dev->bdev);
if (!ic->meta_dev)
ic->meta_device_sectors = ic->data_device_sectors;
else
- ic->meta_device_sectors = i_size_read(ic->meta_dev->bdev->bd_inode) >> SECTOR_SHIFT;
+ ic->meta_device_sectors = bdev_nr_sectors(ic->meta_dev->bdev);
if (!journal_sectors) {
journal_sectors = min((sector_t)DEFAULT_MAX_JOURNAL_SECTORS,
@@ -4367,7 +4367,7 @@ static int dm_integrity_ctr(struct dm_target *ti, unsigned argc, char **argv)
DEBUG_print(" journal_sections %u\n", (unsigned)le32_to_cpu(ic->sb->journal_sections));
DEBUG_print(" journal_entries %u\n", ic->journal_entries);
DEBUG_print(" log2_interleave_sectors %d\n", ic->sb->log2_interleave_sectors);
- DEBUG_print(" data_device_sectors 0x%llx\n", i_size_read(ic->dev->bdev->bd_inode) >> SECTOR_SHIFT);
+ DEBUG_print(" data_device_sectors 0x%llx\n", bdev_nr_sectors(ic->dev->bdev));
DEBUG_print(" initial_sectors 0x%x\n", ic->initial_sectors);
DEBUG_print(" metadata_run 0x%x\n", ic->metadata_run);
DEBUG_print(" log2_metadata_run %d\n", ic->log2_metadata_run);
diff --git a/drivers/md/dm-linear.c b/drivers/md/dm-linear.c
index 679b4c0a2eea1..66ba16713f696 100644
--- a/drivers/md/dm-linear.c
+++ b/drivers/md/dm-linear.c
@@ -135,8 +135,7 @@ static int linear_prepare_ioctl(struct dm_target *ti, struct block_device **bdev
/*
* Only pass ioctls through if the device sizes match exactly.
*/
- if (lc->start ||
- ti->len != i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT)
+ if (lc->start || ti->len != bdev_nr_sectors(dev->bdev))
return 1;
return 0;
}
diff --git a/drivers/md/dm-log-writes.c b/drivers/md/dm-log-writes.c
index d93a4db235124..46de085a96709 100644
--- a/drivers/md/dm-log-writes.c
+++ b/drivers/md/dm-log-writes.c
@@ -446,7 +446,7 @@ static int log_super(struct log_writes_c *lc)
static inline sector_t logdev_last_sector(struct log_writes_c *lc)
{
- return i_size_read(lc->logdev->bdev->bd_inode) >> SECTOR_SHIFT;
+ return bdev_nr_sectors(lc->logdev->bdev);
}
static int log_writes_kthread(void *arg)
@@ -851,7 +851,7 @@ static int log_writes_prepare_ioctl(struct dm_target *ti,
/*
* Only pass ioctls through if the device sizes match exactly.
*/
- if (ti->len != i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT)
+ if (ti->len != bdev_nr_sectors(dev->bdev))
return 1;
return 0;
}
diff --git a/drivers/md/dm-log.c b/drivers/md/dm-log.c
index 1ecf75ef276a4..06f328928a7f5 100644
--- a/drivers/md/dm-log.c
+++ b/drivers/md/dm-log.c
@@ -447,7 +447,7 @@ static int create_log_context(struct dm_dirty_log *log, struct dm_target *ti,
bdev_logical_block_size(lc->header_location.
bdev));
- if (buf_size > i_size_read(dev->bdev->bd_inode)) {
+ if (buf_size > bdev_nr_bytes(dev->bdev)) {
DMWARN("log device %s too small: need %llu bytes",
dev->name, (unsigned long long)buf_size);
kfree(lc);
diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
index 694aaca4eea24..5794f5415155d 100644
--- a/drivers/md/dm-mpath.c
+++ b/drivers/md/dm-mpath.c
@@ -2061,7 +2061,7 @@ static int multipath_prepare_ioctl(struct dm_target *ti,
/*
* Only pass ioctls through if the device sizes match exactly.
*/
- if (!r && ti->len != i_size_read((*bdev)->bd_inode) >> SECTOR_SHIFT)
+ if (!r && ti->len != bdev_nr_sectors((*bdev)))
return 1;
return r;
}
diff --git a/drivers/md/dm-raid.c b/drivers/md/dm-raid.c
index d9ef52159a22b..2b26435a6946e 100644
--- a/drivers/md/dm-raid.c
+++ b/drivers/md/dm-raid.c
@@ -1261,7 +1261,7 @@ static int parse_raid_params(struct raid_set *rs, struct dm_arg_set *as,
md_rdev_init(jdev);
jdev->mddev = &rs->md;
jdev->bdev = rs->journal_dev.dev->bdev;
- jdev->sectors = to_sector(i_size_read(jdev->bdev->bd_inode));
+ jdev->sectors = bdev_nr_sectors(jdev->bdev);
if (jdev->sectors < MIN_RAID456_JOURNAL_SPACE) {
rs->ti->error = "No space for raid4/5/6 journal";
return -ENOSPC;
@@ -1607,7 +1607,7 @@ static int _check_data_dev_sectors(struct raid_set *rs)
rdev_for_each(rdev, &rs->md)
if (!test_bit(Journal, &rdev->flags) && rdev->bdev) {
- ds = min(ds, to_sector(i_size_read(rdev->bdev->bd_inode)));
+ ds = min(ds, bdev_nr_sectors(rdev->bdev));
if (ds < rs->md.dev_sectors) {
rs->ti->error = "Component device(s) too small";
return -EINVAL;
@@ -2662,7 +2662,7 @@ static int rs_adjust_data_offsets(struct raid_set *rs)
* Make sure we got a minimum amount of free sectors per device
*/
if (rs->data_offset &&
- to_sector(i_size_read(rdev->bdev->bd_inode)) - rs->md.dev_sectors < MIN_FREE_RESHAPE_SPACE) {
+ bdev_nr_sectors(rdev->bdev) - rs->md.dev_sectors < MIN_FREE_RESHAPE_SPACE) {
rs->ti->error = data_offset ? "No space for forward reshape" :
"No space for backward reshape";
return -ENOSPC;
diff --git a/drivers/md/dm-switch.c b/drivers/md/dm-switch.c
index 028a92ff6d576..534dc2ca8bb06 100644
--- a/drivers/md/dm-switch.c
+++ b/drivers/md/dm-switch.c
@@ -529,7 +529,7 @@ static int switch_prepare_ioctl(struct dm_target *ti, struct block_device **bdev
* Only pass ioctls through if the device sizes match exactly.
*/
if (ti->len + sctx->path_list[path_nr].start !=
- i_size_read((*bdev)->bd_inode) >> SECTOR_SHIFT)
+ bdev_nr_sectors((*bdev)))
return 1;
return 0;
}
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
index 1fa4d5582dca5..d95142102bd25 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -227,8 +227,7 @@ static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev,
{
struct queue_limits *limits = data;
struct block_device *bdev = dev->bdev;
- sector_t dev_size =
- i_size_read(bdev->bd_inode) >> SECTOR_SHIFT;
+ sector_t dev_size = bdev_nr_sectors(bdev);
unsigned short logical_block_size_sectors =
limits->logical_block_size >> SECTOR_SHIFT;
char b[BDEVNAME_SIZE];
diff --git a/drivers/md/dm-thin-metadata.c b/drivers/md/dm-thin-metadata.c
index c88ed14d49e65..1a96a07cbf443 100644
--- a/drivers/md/dm-thin-metadata.c
+++ b/drivers/md/dm-thin-metadata.c
@@ -549,7 +549,7 @@ static int __write_initial_superblock(struct dm_pool_metadata *pmd)
int r;
struct dm_block *sblock;
struct thin_disk_superblock *disk_super;
- sector_t bdev_size = i_size_read(pmd->bdev->bd_inode) >> SECTOR_SHIFT;
+ sector_t bdev_size = bdev_nr_sectors(pmd->bdev);
if (bdev_size > THIN_METADATA_MAX_SECTORS)
bdev_size = THIN_METADATA_MAX_SECTORS;
diff --git a/drivers/md/dm-thin.c b/drivers/md/dm-thin.c
index 4c67b77c23c1b..ec119d2422d5d 100644
--- a/drivers/md/dm-thin.c
+++ b/drivers/md/dm-thin.c
@@ -3212,7 +3212,7 @@ static int metadata_pre_commit_callback(void *context)
static sector_t get_dev_size(struct block_device *bdev)
{
- return i_size_read(bdev->bd_inode) >> SECTOR_SHIFT;
+ return bdev_nr_sectors(bdev);
}
static void warn_if_metadata_device_too_big(struct block_device *bdev)
diff --git a/drivers/md/dm-verity-target.c b/drivers/md/dm-verity-target.c
index 88e2702b473b0..4651859d4233b 100644
--- a/drivers/md/dm-verity-target.c
+++ b/drivers/md/dm-verity-target.c
@@ -825,8 +825,7 @@ static int verity_prepare_ioctl(struct dm_target *ti, struct block_device **bdev
*bdev = v->data_dev->bdev;
- if (v->data_start ||
- ti->len != i_size_read(v->data_dev->bdev->bd_inode) >> SECTOR_SHIFT)
+ if (v->data_start || ti->len != bdev_nr_sectors(v->data_dev->bdev))
return 1;
return 0;
}
diff --git a/drivers/md/dm-writecache.c b/drivers/md/dm-writecache.c
index 18320444fb0a9..017806096b91e 100644
--- a/drivers/md/dm-writecache.c
+++ b/drivers/md/dm-writecache.c
@@ -2341,7 +2341,7 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv)
ti->error = "Cache data device lookup failed";
goto bad;
}
- wc->memory_map_size = i_size_read(wc->ssd_dev->bdev->bd_inode);
+ wc->memory_map_size = bdev_nr_bytes(wc->ssd_dev->bdev);
/*
* Parse the cache block size
diff --git a/drivers/md/dm-zoned-target.c b/drivers/md/dm-zoned-target.c
index ae1bc48c0043d..8dc21c09329f2 100644
--- a/drivers/md/dm-zoned-target.c
+++ b/drivers/md/dm-zoned-target.c
@@ -733,7 +733,7 @@ static int dmz_get_zoned_device(struct dm_target *ti, char *path,
dev->dev_idx = idx;
(void)bdevname(dev->bdev, dev->name);
- dev->capacity = i_size_read(bdev->bd_inode) >> SECTOR_SHIFT;
+ dev->capacity = bdev_nr_sectors(bdev);
if (ti->begin) {
ti->error = "Partial mapping is not supported";
goto err;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 06/30] md: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (4 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 05/30] dm: use bdev_nr_sectors and bdev_nr_bytes instead of open coding them Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 07/30] nvmet: use bdev_nr_bytes " Christoph Hellwig
` (23 subsequent siblings)
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Song Liu <song@kernel.org>
---
drivers/md/md.c | 26 +++++++++++---------------
1 file changed, 11 insertions(+), 15 deletions(-)
diff --git a/drivers/md/md.c b/drivers/md/md.c
index ec09083ff0eff..0c75ba047ef60 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -890,8 +890,7 @@ static struct md_personality *find_pers(int level, char *clevel)
/* return the offset of the super block in 512byte sectors */
static inline sector_t calc_dev_sboffset(struct md_rdev *rdev)
{
- sector_t num_sectors = i_size_read(rdev->bdev->bd_inode) / 512;
- return MD_NEW_SIZE_SECTORS(num_sectors);
+ return MD_NEW_SIZE_SECTORS(bdev_nr_sectors(rdev->bdev));
}
static int alloc_disk_sb(struct md_rdev *rdev)
@@ -1633,8 +1632,7 @@ static int super_1_load(struct md_rdev *rdev, struct md_rdev *refdev, int minor_
*/
switch(minor_version) {
case 0:
- sb_start = i_size_read(rdev->bdev->bd_inode) >> 9;
- sb_start -= 8*2;
+ sb_start = bdev_nr_sectors(rdev->bdev) - 8 * 2;
sb_start &= ~(sector_t)(4*2-1);
break;
case 1:
@@ -1789,10 +1787,9 @@ static int super_1_load(struct md_rdev *rdev, struct md_rdev *refdev, int minor_
else
ret = 0;
}
- if (minor_version) {
- sectors = (i_size_read(rdev->bdev->bd_inode) >> 9);
- sectors -= rdev->data_offset;
- } else
+ if (minor_version)
+ sectors = bdev_nr_sectors(rdev->bdev) - rdev->data_offset;
+ else
sectors = rdev->sb_start;
if (sectors < le64_to_cpu(sb->data_size))
return -EINVAL;
@@ -2170,8 +2167,7 @@ super_1_rdev_size_change(struct md_rdev *rdev, sector_t num_sectors)
return 0; /* too confusing */
if (rdev->sb_start < rdev->data_offset) {
/* minor versions 1 and 2; superblock before data */
- max_sectors = i_size_read(rdev->bdev->bd_inode) >> 9;
- max_sectors -= rdev->data_offset;
+ max_sectors = bdev_nr_sectors(rdev->bdev) - rdev->data_offset;
if (!num_sectors || num_sectors > max_sectors)
num_sectors = max_sectors;
} else if (rdev->mddev->bitmap_info.offset) {
@@ -2180,7 +2176,7 @@ super_1_rdev_size_change(struct md_rdev *rdev, sector_t num_sectors)
} else {
/* minor version 0; superblock after data */
sector_t sb_start, bm_space;
- sector_t dev_size = i_size_read(rdev->bdev->bd_inode) >> 9;
+ sector_t dev_size = bdev_nr_sectors(rdev->bdev);
/* 8K is for superblock */
sb_start = dev_size - 8*2;
@@ -3384,7 +3380,7 @@ rdev_size_store(struct md_rdev *rdev, const char *buf, size_t len)
if (!sectors)
return -EBUSY;
} else if (!sectors)
- sectors = (i_size_read(rdev->bdev->bd_inode) >> 9) -
+ sectors = bdev_nr_sectors(rdev->bdev) -
rdev->data_offset;
if (!my_mddev->pers->resize)
/* Cannot change size for RAID0 or Linear etc */
@@ -3711,7 +3707,7 @@ static struct md_rdev *md_import_device(dev_t newdev, int super_format, int supe
kobject_init(&rdev->kobj, &rdev_ktype);
- size = i_size_read(rdev->bdev->bd_inode) >> BLOCK_SIZE_BITS;
+ size = bdev_nr_bytes(rdev->bdev) >> BLOCK_SIZE_BITS;
if (!size) {
pr_warn("md: %s has zero or unknown size, marking faulty!\n",
bdevname(rdev->bdev,b));
@@ -6882,7 +6878,7 @@ int md_add_new_disk(struct mddev *mddev, struct mdu_disk_info_s *info)
if (!mddev->persistent) {
pr_debug("md: nonpersistent superblock ...\n");
- rdev->sb_start = i_size_read(rdev->bdev->bd_inode) / 512;
+ rdev->sb_start = bdev_nr_sectors(rdev->bdev);
} else
rdev->sb_start = calc_dev_sboffset(rdev);
rdev->sectors = rdev->sb_start;
@@ -6969,7 +6965,7 @@ static int hot_add_disk(struct mddev *mddev, dev_t dev)
if (mddev->persistent)
rdev->sb_start = calc_dev_sboffset(rdev);
else
- rdev->sb_start = i_size_read(rdev->bdev->bd_inode) / 512;
+ rdev->sb_start = bdev_nr_sectors(rdev->bdev);
rdev->sectors = rdev->sb_start;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 07/30] nvmet: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (5 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 06/30] md: use bdev_nr_sectors instead of open coding it Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 15:51 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 08/30] target/iblock: " Christoph Hellwig
` (22 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
---
drivers/nvme/target/io-cmd-bdev.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/nvme/target/io-cmd-bdev.c b/drivers/nvme/target/io-cmd-bdev.c
index 6139e1de50a66..70ca9dfc1771a 100644
--- a/drivers/nvme/target/io-cmd-bdev.c
+++ b/drivers/nvme/target/io-cmd-bdev.c
@@ -87,7 +87,7 @@ int nvmet_bdev_ns_enable(struct nvmet_ns *ns)
ns->bdev = NULL;
return ret;
}
- ns->size = i_size_read(ns->bdev->bd_inode);
+ ns->size = bdev_nr_bytes(ns->bdev);
ns->blksize_shift = blksize_bits(bdev_logical_block_size(ns->bdev));
ns->pi_type = 0;
@@ -108,7 +108,7 @@ int nvmet_bdev_ns_enable(struct nvmet_ns *ns)
void nvmet_bdev_ns_revalidate(struct nvmet_ns *ns)
{
- ns->size = i_size_read(ns->bdev->bd_inode);
+ ns->size = bdev_nr_bytes(ns->bdev);
}
u16 blk_to_nvme_status(struct nvmet_req *req, blk_status_t blk_sts)
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 08/30] target/iblock: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (6 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 07/30] nvmet: use bdev_nr_bytes " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 15:57 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 09/30] fs: use bdev_nr_bytes instead of open coding it in blkdev_max_block Christoph Hellwig
` (21 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
---
drivers/target/target_core_iblock.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/target/target_core_iblock.c b/drivers/target/target_core_iblock.c
index 31df20abe141f..b1ef041cacd81 100644
--- a/drivers/target/target_core_iblock.c
+++ b/drivers/target/target_core_iblock.c
@@ -232,9 +232,9 @@ static unsigned long long iblock_emulate_read_cap_with_block_size(
struct block_device *bd,
struct request_queue *q)
{
- unsigned long long blocks_long = (div_u64(i_size_read(bd->bd_inode),
- bdev_logical_block_size(bd)) - 1);
u32 block_size = bdev_logical_block_size(bd);
+ unsigned long long blocks_long =
+ div_u64(bdev_nr_bytes(bd), block_size) - 1;
if (block_size == dev->dev_attrib.block_size)
return blocks_long;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 09/30] fs: use bdev_nr_bytes instead of open coding it in blkdev_max_block
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (7 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 08/30] target/iblock: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:00 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 10/30] fs: simplify init_page_buffers Christoph Hellwig
` (20 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
---
fs/buffer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/buffer.c b/fs/buffer.c
index c615387aedcae..156358977249f 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -878,7 +878,7 @@ link_dev_buffers(struct page *page, struct buffer_head *head)
static sector_t blkdev_max_block(struct block_device *bdev, unsigned int size)
{
sector_t retval = ~((sector_t)0);
- loff_t sz = i_size_read(bdev->bd_inode);
+ loff_t sz = bdev_nr_bytes(bdev);
if (sz) {
unsigned int sizebits = blksize_bits(size);
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 10/30] fs: simplify init_page_buffers
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (8 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 09/30] fs: use bdev_nr_bytes instead of open coding it in blkdev_max_block Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 11/30] affs: use bdev_nr_sectors instead of open coding it Christoph Hellwig
` (19 subsequent siblings)
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
No need to convert from bdev to inode and back.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Jan Kara <jack@suse.cz>
---
fs/buffer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/buffer.c b/fs/buffer.c
index 156358977249f..46bc589b7a03c 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -897,7 +897,7 @@ init_page_buffers(struct page *page, struct block_device *bdev,
struct buffer_head *head = page_buffers(page);
struct buffer_head *bh = head;
int uptodate = PageUptodate(page);
- sector_t end_block = blkdev_max_block(I_BDEV(bdev->bd_inode), size);
+ sector_t end_block = blkdev_max_block(bdev, size);
do {
if (!buffer_mapped(bh)) {
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 11/30] affs: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (9 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 10/30] fs: simplify init_page_buffers Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-18 6:22 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes " Christoph Hellwig
` (18 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
---
fs/affs/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/affs/super.c b/fs/affs/super.c
index c6c2a513ec92d..c609005a9eaaa 100644
--- a/fs/affs/super.c
+++ b/fs/affs/super.c
@@ -389,7 +389,7 @@ static int affs_fill_super(struct super_block *sb, void *data, int silent)
* blocks, we will have to change it.
*/
- size = i_size_read(sb->s_bdev->bd_inode) >> 9;
+ size = bdev_nr_sectors(sb->s_bdev);
pr_debug("initial blocksize=%d, #blocks=%d\n", 512, size);
affs_set_blocksize(sb, PAGE_SIZE);
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (10 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 11/30] affs: use bdev_nr_sectors instead of open coding it Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:52 ` David Sterba
2021-10-15 16:59 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 13/30] cramfs: " Christoph Hellwig
` (17 subsequent siblings)
29 siblings, 2 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Anand Jain, Jan Kara,
linux-fsdevel, Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
---
fs/btrfs/dev-replace.c | 3 +--
fs/btrfs/disk-io.c | 2 +-
fs/btrfs/ioctl.c | 4 ++--
fs/btrfs/volumes.c | 8 ++++----
4 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/fs/btrfs/dev-replace.c b/fs/btrfs/dev-replace.c
index d029be40ea6f0..fbb8b4457a721 100644
--- a/fs/btrfs/dev-replace.c
+++ b/fs/btrfs/dev-replace.c
@@ -283,8 +283,7 @@ static int btrfs_init_dev_replace_tgtdev(struct btrfs_fs_info *fs_info,
}
- if (i_size_read(bdev->bd_inode) <
- btrfs_device_get_total_bytes(srcdev)) {
+ if (bdev_nr_bytes(bdev) < btrfs_device_get_total_bytes(srcdev)) {
btrfs_err(fs_info,
"target device is smaller than source device!");
ret = -EINVAL;
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 355ea88d5c5f7..29e7598584c4c 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -3740,7 +3740,7 @@ struct btrfs_super_block *btrfs_read_dev_one_super(struct block_device *bdev,
else if (ret)
return ERR_PTR(ret);
- if (bytenr + BTRFS_SUPER_INFO_SIZE >= i_size_read(bdev->bd_inode))
+ if (bytenr + BTRFS_SUPER_INFO_SIZE >= bdev_nr_bytes(bdev))
return ERR_PTR(-EINVAL);
page = read_cache_page_gfp(mapping, bytenr >> PAGE_SHIFT, GFP_NOFS);
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index cc61813213d83..36ff713da1b12 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -1730,7 +1730,7 @@ static noinline int btrfs_ioctl_resize(struct file *file,
}
if (!strcmp(sizestr, "max"))
- new_size = device->bdev->bd_inode->i_size;
+ new_size = bdev_nr_bytes(device->bdev);
else {
if (sizestr[0] == '-') {
mod = -1;
@@ -1771,7 +1771,7 @@ static noinline int btrfs_ioctl_resize(struct file *file,
ret = -EINVAL;
goto out_finish;
}
- if (new_size > device->bdev->bd_inode->i_size) {
+ if (new_size > bdev_nr_bytes(device->bdev)) {
ret = -EFBIG;
goto out_finish;
}
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 2ec3b8ac8fa35..676c7c4e6e59d 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -1286,7 +1286,7 @@ static struct btrfs_super_block *btrfs_read_disk_super(struct block_device *bdev
pgoff_t index;
/* make sure our super fits in the device */
- if (bytenr + PAGE_SIZE >= i_size_read(bdev->bd_inode))
+ if (bytenr + PAGE_SIZE >= bdev_nr_bytes(bdev))
return ERR_PTR(-EINVAL);
/* make sure our super fits in the page */
@@ -2610,8 +2610,8 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
device->io_width = fs_info->sectorsize;
device->io_align = fs_info->sectorsize;
device->sector_size = fs_info->sectorsize;
- device->total_bytes = round_down(i_size_read(bdev->bd_inode),
- fs_info->sectorsize);
+ device->total_bytes =
+ round_down(bdev_nr_bytes(bdev), fs_info->sectorsize);
device->disk_total_bytes = device->total_bytes;
device->commit_total_bytes = device->total_bytes;
set_bit(BTRFS_DEV_STATE_IN_FS_METADATA, &device->dev_state);
@@ -7236,7 +7236,7 @@ static int read_one_dev(struct extent_buffer *leaf,
fill_device_from_item(leaf, dev_item, device);
if (device->bdev) {
- u64 max_total_bytes = i_size_read(device->bdev->bd_inode);
+ u64 max_total_bytes = bdev_nr_bytes(device->bdev);
if (device->total_bytes > max_total_bytes) {
btrfs_err(fs_info,
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 13/30] cramfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (11 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:51 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 14/30] fat: use bdev_nr_sectors " Christoph Hellwig
` (16 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
fs/cramfs/inode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c
index 2be65269a987c..666aa380011e0 100644
--- a/fs/cramfs/inode.c
+++ b/fs/cramfs/inode.c
@@ -209,7 +209,7 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
return read_buffers[i] + blk_offset;
}
- devsize = mapping->host->i_size >> PAGE_SHIFT;
+ devsize = bdev_nr_bytes(sb->s_bdev) >> PAGE_SHIFT;
/* Ok, read in BLKS_PER_BUF pages completely first. */
for (i = 0; i < BLKS_PER_BUF; i++) {
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 14/30] fat: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (12 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 13/30] cramfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 15/30] hfs: " Christoph Hellwig
` (15 subsequent siblings)
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
---
fs/fat/inode.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index de0c9b013a851..9f3cd03668adc 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -1536,14 +1536,11 @@ static int fat_read_static_bpb(struct super_block *sb,
struct fat_bios_param_block *bpb)
{
static const char *notdos1x = "This doesn't look like a DOS 1.x volume";
-
+ sector_t bd_sects = bdev_nr_sectors(sb->s_bdev);
struct fat_floppy_defaults *fdefaults = NULL;
int error = -EINVAL;
- sector_t bd_sects;
unsigned i;
- bd_sects = i_size_read(sb->s_bdev->bd_inode) / SECTOR_SIZE;
-
/* 16-bit DOS 1.x reliably wrote bootstrap short-jmp code */
if (b->ignored[0] != 0xeb || b->ignored[2] != 0x90) {
if (!silent)
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 15/30] hfs: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (13 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 14/30] fat: use bdev_nr_sectors " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 16/30] hfsplus: " Christoph Hellwig
` (14 subsequent siblings)
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
---
fs/hfs/mdb.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/hfs/mdb.c b/fs/hfs/mdb.c
index cdf0edeeb2781..5beb826524354 100644
--- a/fs/hfs/mdb.c
+++ b/fs/hfs/mdb.c
@@ -36,7 +36,7 @@ static int hfs_get_last_session(struct super_block *sb,
/* default values */
*start = 0;
- *size = i_size_read(sb->s_bdev->bd_inode) >> 9;
+ *size = bdev_nr_sectors(sb->s_bdev);
if (HFS_SB(sb)->session >= 0) {
struct cdrom_tocentry te;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 16/30] hfsplus: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (14 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 15/30] hfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 17/30] jfs: use bdev_nr_bytes " Christoph Hellwig
` (13 subsequent siblings)
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
---
fs/hfsplus/wrapper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/hfsplus/wrapper.c b/fs/hfsplus/wrapper.c
index 0350dc7821bf9..51ae6f1eb4a55 100644
--- a/fs/hfsplus/wrapper.c
+++ b/fs/hfsplus/wrapper.c
@@ -131,7 +131,7 @@ static int hfsplus_get_last_session(struct super_block *sb,
/* default values */
*start = 0;
- *size = i_size_read(sb->s_bdev->bd_inode) >> 9;
+ *size = bdev_nr_sectors(sb->s_bdev);
if (HFSPLUS_SB(sb)->session >= 0) {
struct cdrom_tocentry te;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 17/30] jfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (15 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 16/30] hfsplus: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:53 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 18/30] nfs/blocklayout: " Christoph Hellwig
` (12 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, Dave Kleikamp, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Dave Kleikamp <dave.kleikamp@oracle.com>
---
fs/jfs/resize.c | 2 +-
fs/jfs/super.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/jfs/resize.c b/fs/jfs/resize.c
index bde787c354fcc..a42dbb0d3d28a 100644
--- a/fs/jfs/resize.c
+++ b/fs/jfs/resize.c
@@ -199,7 +199,7 @@ int jfs_extendfs(struct super_block *sb, s64 newLVSize, int newLogSize)
txQuiesce(sb);
/* Reset size of direct inode */
- sbi->direct_inode->i_size = i_size_read(sb->s_bdev->bd_inode);
+ sbi->direct_inode->i_size = bdev_nr_bytes(sb->s_bdev);
if (sbi->mntflag & JFS_INLINELOG) {
/*
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
index 9030aeaf0f886..9241caa161163 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
@@ -551,7 +551,7 @@ static int jfs_fill_super(struct super_block *sb, void *data, int silent)
ret = -ENOMEM;
goto out_unload;
}
- inode->i_size = i_size_read(sb->s_bdev->bd_inode);
+ inode->i_size = bdev_nr_bytes(sb->s_bdev);
inode->i_mapping->a_ops = &jfs_metapage_aops;
inode_fake_hash(inode);
mapping_set_gfp_mask(inode->i_mapping, GFP_NOFS);
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 18/30] nfs/blocklayout: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (16 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 17/30] jfs: use bdev_nr_bytes " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:54 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 19/30] nilfs2: " Christoph Hellwig
` (11 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
fs/nfs/blocklayout/dev.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/nfs/blocklayout/dev.c b/fs/nfs/blocklayout/dev.c
index acb1d22907daf..5e56da748b2ab 100644
--- a/fs/nfs/blocklayout/dev.c
+++ b/fs/nfs/blocklayout/dev.c
@@ -252,7 +252,7 @@ bl_parse_simple(struct nfs_server *server, struct pnfs_block_dev *d,
d->bdev = bdev;
- d->len = i_size_read(d->bdev->bd_inode);
+ d->len = bdev_nr_bytes(d->bdev);
d->map = bl_map_simple;
printk(KERN_INFO "pNFS: using block device %s\n",
@@ -367,7 +367,7 @@ bl_parse_scsi(struct nfs_server *server, struct pnfs_block_dev *d,
return PTR_ERR(bdev);
d->bdev = bdev;
- d->len = i_size_read(d->bdev->bd_inode);
+ d->len = bdev_nr_bytes(d->bdev);
d->map = bl_map_simple;
d->pr_key = v->scsi.pr_key;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 19/30] nilfs2: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (17 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 18/30] nfs/blocklayout: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:54 ` Ryusuke Konishi
2021-10-15 16:54 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 20/30] ntfs3: " Christoph Hellwig
` (10 subsequent siblings)
29 siblings, 2 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
fs/nilfs2/ioctl.c | 2 +-
fs/nilfs2/super.c | 2 +-
fs/nilfs2/the_nilfs.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/fs/nilfs2/ioctl.c b/fs/nilfs2/ioctl.c
index 640ac8fe891e6..1d0583cfd9701 100644
--- a/fs/nilfs2/ioctl.c
+++ b/fs/nilfs2/ioctl.c
@@ -1107,7 +1107,7 @@ static int nilfs_ioctl_set_alloc_range(struct inode *inode, void __user *argp)
goto out;
ret = -ERANGE;
- if (range[1] > i_size_read(inode->i_sb->s_bdev->bd_inode))
+ if (range[1] > bdev_nr_bytes(inode->i_sb->s_bdev))
goto out;
segbytes = nilfs->ns_blocks_per_segment * nilfs->ns_blocksize;
diff --git a/fs/nilfs2/super.c b/fs/nilfs2/super.c
index f6b2d280aab5a..3134c0e42fd46 100644
--- a/fs/nilfs2/super.c
+++ b/fs/nilfs2/super.c
@@ -403,7 +403,7 @@ int nilfs_resize_fs(struct super_block *sb, __u64 newsize)
int ret;
ret = -ERANGE;
- devsize = i_size_read(sb->s_bdev->bd_inode);
+ devsize = bdev_nr_bytes(sb->s_bdev);
if (newsize > devsize)
goto out;
diff --git a/fs/nilfs2/the_nilfs.c b/fs/nilfs2/the_nilfs.c
index c8bfc01da5d71..1bfcb5d3ea480 100644
--- a/fs/nilfs2/the_nilfs.c
+++ b/fs/nilfs2/the_nilfs.c
@@ -489,7 +489,7 @@ static int nilfs_load_super_block(struct the_nilfs *nilfs,
{
struct nilfs_super_block **sbp = nilfs->ns_sbp;
struct buffer_head **sbh = nilfs->ns_sbh;
- u64 sb2off = NILFS_SB2_OFFSET_BYTES(nilfs->ns_bdev->bd_inode->i_size);
+ u64 sb2off = NILFS_SB2_OFFSET_BYTES(bdev_nr_bytes(nilfs->ns_bdev));
int valid[2], swp = 0;
sbp[0] = nilfs_read_super_block(sb, NILFS_SB_OFFSET_BYTES, blocksize,
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 20/30] ntfs3: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (18 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 19/30] nilfs2: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:54 ` Kees Cook
2021-10-16 7:40 ` Kari Argillander
2021-10-15 13:26 ` [dm-devel] [PATCH 21/30] pstore/blk: " Christoph Hellwig
` (9 subsequent siblings)
29 siblings, 2 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
fs/ntfs3/super.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/fs/ntfs3/super.c b/fs/ntfs3/super.c
index 55bbc9200a10e..7ed2cb5e8b1d9 100644
--- a/fs/ntfs3/super.c
+++ b/fs/ntfs3/super.c
@@ -918,7 +918,6 @@ static int ntfs_fill_super(struct super_block *sb, void *data, int silent)
int err;
struct ntfs_sb_info *sbi;
struct block_device *bdev = sb->s_bdev;
- struct inode *bd_inode = bdev->bd_inode;
struct request_queue *rq = bdev_get_queue(bdev);
struct inode *inode = NULL;
struct ntfs_inode *ni;
@@ -967,7 +966,7 @@ static int ntfs_fill_super(struct super_block *sb, void *data, int silent)
/* Parse boot. */
err = ntfs_init_from_boot(sb, rq ? queue_logical_block_size(rq) : 512,
- bd_inode->i_size);
+ bdev_nr_bytes(bdev));
if (err)
goto out;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 21/30] pstore/blk: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (19 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 20/30] ntfs3: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:56 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 22/30] reiserfs: " Christoph Hellwig
` (8 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
fs/pstore/blk.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/fs/pstore/blk.c b/fs/pstore/blk.c
index 04ce58c939a0b..5d1fbaffd66a1 100644
--- a/fs/pstore/blk.c
+++ b/fs/pstore/blk.c
@@ -205,7 +205,6 @@ static ssize_t psblk_generic_blk_write(const char *buf, size_t bytes,
static int __register_pstore_blk(struct pstore_device_info *dev,
const char *devpath)
{
- struct inode *inode;
int ret = -ENODEV;
lockdep_assert_held(&pstore_blk_lock);
@@ -217,14 +216,13 @@ static int __register_pstore_blk(struct pstore_device_info *dev,
goto err;
}
- inode = file_inode(psblk_file);
- if (!S_ISBLK(inode->i_mode)) {
+ if (!S_ISBLK(file_inode(psblk_file)->i_mode)) {
pr_err("'%s' is not block device!\n", devpath);
goto err_fput;
}
- inode = I_BDEV(psblk_file->f_mapping->host)->bd_inode;
- dev->zone.total_size = i_size_read(inode);
+ dev->zone.total_size =
+ bdev_nr_bytes(I_BDEV(psblk_file->f_mapping->host));
ret = __register_pstore_device(dev);
if (ret)
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 22/30] reiserfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (20 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 21/30] pstore/blk: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:56 ` Kees Cook
2021-10-18 6:22 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 23/30] squashfs: " Christoph Hellwig
` (7 subsequent siblings)
29 siblings, 2 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size and remove two
cargo culted checks that can't be false.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
---
fs/reiserfs/super.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c
index 58481f8d63d5b..8647a00434ea4 100644
--- a/fs/reiserfs/super.c
+++ b/fs/reiserfs/super.c
@@ -1986,9 +1986,7 @@ static int reiserfs_fill_super(struct super_block *s, void *data, int silent)
* smaller than the filesystem. If the check fails then abort and
* scream, because bad stuff will happen otherwise.
*/
- if (s->s_bdev && s->s_bdev->bd_inode
- && i_size_read(s->s_bdev->bd_inode) <
- sb_block_count(rs) * sb_blocksize(rs)) {
+ if (bdev_nr_bytes(s->s_bdev) < sb_block_count(rs) * sb_blocksize(rs)) {
SWARN(silent, s, "", "Filesystem cannot be "
"mounted because it is bigger than the device");
SWARN(silent, s, "", "You may need to run fsck "
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 23/30] squashfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (21 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 22/30] reiserfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:57 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 24/30] block: use bdev_nr_bytes instead of open coding it in blkdev_fallocate Christoph Hellwig
` (6 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Phillip Lougher <phillip@squashfs.org.uk>
---
fs/squashfs/super.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/fs/squashfs/super.c b/fs/squashfs/super.c
index 60d6951915f44..bb44ff4c5cc67 100644
--- a/fs/squashfs/super.c
+++ b/fs/squashfs/super.c
@@ -16,6 +16,7 @@
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+#include <linux/blkdev.h>
#include <linux/fs.h>
#include <linux/fs_context.h>
#include <linux/fs_parser.h>
@@ -179,8 +180,8 @@ static int squashfs_fill_super(struct super_block *sb, struct fs_context *fc)
/* Check the filesystem does not extend beyond the end of the
block device */
msblk->bytes_used = le64_to_cpu(sblk->bytes_used);
- if (msblk->bytes_used < 0 || msblk->bytes_used >
- i_size_read(sb->s_bdev->bd_inode))
+ if (msblk->bytes_used < 0 ||
+ msblk->bytes_used > bdev_nr_bytes(sb->s_bdev))
goto failed_mount;
/* Check block size for sanity */
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 24/30] block: use bdev_nr_bytes instead of open coding it in blkdev_fallocate
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (22 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 23/30] squashfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:57 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper Christoph Hellwig
` (5 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
---
block/fops.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/block/fops.c b/block/fops.c
index 7bb9581a146cf..a6a4d412720cd 100644
--- a/block/fops.c
+++ b/block/fops.c
@@ -548,7 +548,7 @@ static long blkdev_fallocate(struct file *file, int mode, loff_t start,
return -EOPNOTSUPP;
/* Don't go off the end of the device. */
- isize = i_size_read(bdev->bd_inode);
+ isize = bdev_nr_bytes(bdev);
if (start >= isize)
return -EINVAL;
if (end >= isize) {
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (23 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 24/30] block: use bdev_nr_bytes instead of open coding it in blkdev_fallocate Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 16:58 ` Kees Cook
2021-10-18 5:48 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 26/30] ext4: use sb_bdev_nr_blocks Christoph Hellwig
` (4 subsequent siblings)
29 siblings, 2 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Add a helper to return the size of sb->s_bdev in sb->s_blocksize_bits
based unites. Note that SECTOR_SHIFT has to be open coded due to
include dependency issues for now, but I have a plan to sort that out
eventually.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/linux/genhd.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index f67db3c5a04b3..70b4ac47e693c 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -250,6 +250,12 @@ static inline sector_t get_capacity(struct gendisk *disk)
return bdev_nr_sectors(disk->part0);
}
+static inline u64 sb_bdev_nr_blocks(struct super_block *sb)
+{
+ return bdev_nr_sectors(sb->s_bdev) >>
+ (sb->s_blocksize_bits - SECTOR_SHIFT);
+}
+
int bdev_disk_changed(struct gendisk *disk, bool invalidate);
void blk_drop_partitions(struct gendisk *disk);
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 26/30] ext4: use sb_bdev_nr_blocks
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (24 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-18 5:48 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 27/30] jfs: " Christoph Hellwig
` (3 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the sb_bdev_nr_blocks helper instead of open coding it.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Jan Kara <jack@suse.cz>
Acked-by: Theodore Ts'o <tytso@mit.edu>
---
fs/ext4/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 0775950ee84e3..3dde8be5df490 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -4468,7 +4468,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
goto cantfind_ext4;
/* check blocks count against device size */
- blocks_count = sb->s_bdev->bd_inode->i_size >> sb->s_blocksize_bits;
+ blocks_count = sb_bdev_nr_blocks(sb);
if (blocks_count && ext4_blocks_count(es) > blocks_count) {
ext4_msg(sb, KERN_WARNING, "bad geometry: block count %llu "
"exceeds size of device (%llu blocks)",
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 27/30] jfs: use sb_bdev_nr_blocks
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (25 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 26/30] ext4: use sb_bdev_nr_blocks Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 14:16 ` Dave Kleikamp
2021-10-15 13:26 ` [dm-devel] [PATCH 28/30] ntfs: " Christoph Hellwig
` (2 subsequent siblings)
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the sb_bdev_nr_blocks helper instead of open coding it.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
---
fs/jfs/resize.c | 3 +--
fs/jfs/super.c | 3 +--
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/fs/jfs/resize.c b/fs/jfs/resize.c
index a42dbb0d3d28a..8b9a72ae5efa7 100644
--- a/fs/jfs/resize.c
+++ b/fs/jfs/resize.c
@@ -86,8 +86,7 @@ int jfs_extendfs(struct super_block *sb, s64 newLVSize, int newLogSize)
goto out;
}
- VolumeSize = i_size_read(sb->s_bdev->bd_inode) >> sb->s_blocksize_bits;
-
+ VolumeSize = sb_bdev_nr_blocks(sb);
if (VolumeSize) {
if (newLVSize > VolumeSize) {
printk(KERN_WARNING "jfs_extendfs: invalid size\n");
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
index 9241caa161163..24cbc9946e01c 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
@@ -284,8 +284,7 @@ static int parse_options(char *options, struct super_block *sb, s64 *newLVSize,
}
case Opt_resize_nosize:
{
- *newLVSize = i_size_read(sb->s_bdev->bd_inode) >>
- sb->s_blocksize_bits;
+ *newLVSize = sb_bdev_nr_blocks(sb);
if (*newLVSize == 0)
pr_err("JFS: Cannot determine volume size\n");
break;
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 28/30] ntfs: use sb_bdev_nr_blocks
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (26 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 27/30] jfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 14:35 ` Anton Altaparmakov
2021-10-15 13:26 ` [dm-devel] [PATCH 29/30] reiserfs: " Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 30/30] udf: " Christoph Hellwig
29 siblings, 1 reply; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the sb_bdev_nr_blocks helper instead of open coding it and clean up
ntfs_fill_super a bit by moving an assignment a little earlier that has
no negative side effects.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
---
fs/ntfs/super.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/fs/ntfs/super.c b/fs/ntfs/super.c
index 0d7e948cb29c9..5ae8de09b271b 100644
--- a/fs/ntfs/super.c
+++ b/fs/ntfs/super.c
@@ -2772,13 +2772,12 @@ static int ntfs_fill_super(struct super_block *sb, void *opt, const int silent)
ntfs_debug("Set device block size to %i bytes (block size bits %i).",
blocksize, sb->s_blocksize_bits);
/* Determine the size of the device in units of block_size bytes. */
- if (!i_size_read(sb->s_bdev->bd_inode)) {
+ vol->nr_blocks = sb_bdev_nr_blocks(sb);
+ if (!vol->nr_blocks) {
if (!silent)
ntfs_error(sb, "Unable to determine device size.");
goto err_out_now;
}
- vol->nr_blocks = i_size_read(sb->s_bdev->bd_inode) >>
- sb->s_blocksize_bits;
/* Read the boot sector and return unlocked buffer head to it. */
if (!(bh = read_ntfs_boot_sector(sb, silent))) {
if (!silent)
@@ -2816,8 +2815,7 @@ static int ntfs_fill_super(struct super_block *sb, void *opt, const int silent)
goto err_out_now;
}
BUG_ON(blocksize != sb->s_blocksize);
- vol->nr_blocks = i_size_read(sb->s_bdev->bd_inode) >>
- sb->s_blocksize_bits;
+ vol->nr_blocks = sb_bdev_nr_blocks(sb);
ntfs_debug("Changed device block size to %i bytes (block size "
"bits %i) to match volume sector size.",
blocksize, sb->s_blocksize_bits);
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 29/30] reiserfs: use sb_bdev_nr_blocks
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (27 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 28/30] ntfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 30/30] udf: " Christoph Hellwig
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the sb_bdev_nr_blocks helper instead of open coding it.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Jan Kara <jack@suse.cz>
---
fs/reiserfs/super.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c
index 8647a00434ea4..076f9ab943060 100644
--- a/fs/reiserfs/super.c
+++ b/fs/reiserfs/super.c
@@ -1199,9 +1199,7 @@ static int reiserfs_parse_options(struct super_block *s,
if (!strcmp(arg, "auto")) {
/* From JFS code, to auto-get the size. */
- *blocks =
- i_size_read(s->s_bdev->bd_inode) >> s->
- s_blocksize_bits;
+ *blocks = sb_bdev_nr_blocks(s);
} else {
*blocks = simple_strtoul(arg, &p, 0);
if (*p != '\0') {
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 30/30] udf: use sb_bdev_nr_blocks
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
` (28 preceding siblings ...)
2021-10-15 13:26 ` [dm-devel] [PATCH 29/30] reiserfs: " Christoph Hellwig
@ 2021-10-15 13:26 ` Christoph Hellwig
29 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:26 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
Use the sb_bdev_nr_blocks helper instead of open coding it.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Jan Kara <jack@suse.cz>
---
fs/udf/lowlevel.c | 5 ++---
fs/udf/super.c | 9 +++------
2 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/fs/udf/lowlevel.c b/fs/udf/lowlevel.c
index f1094cdcd6cde..46d6971721975 100644
--- a/fs/udf/lowlevel.c
+++ b/fs/udf/lowlevel.c
@@ -47,8 +47,7 @@ unsigned int udf_get_last_session(struct super_block *sb)
unsigned long udf_get_last_block(struct super_block *sb)
{
- struct block_device *bdev = sb->s_bdev;
- struct cdrom_device_info *cdi = disk_to_cdi(bdev->bd_disk);
+ struct cdrom_device_info *cdi = disk_to_cdi(sb->s_bdev->bd_disk);
unsigned long lblock = 0;
/*
@@ -56,7 +55,7 @@ unsigned long udf_get_last_block(struct super_block *sb)
* Try using the device size...
*/
if (!cdi || cdrom_get_last_written(cdi, &lblock) || lblock == 0)
- lblock = i_size_read(bdev->bd_inode) >> sb->s_blocksize_bits;
+ lblock = sb_bdev_nr_blocks(sb);
if (lblock)
return lblock - 1;
diff --git a/fs/udf/super.c b/fs/udf/super.c
index b2d7c57d06881..34247fba6df91 100644
--- a/fs/udf/super.c
+++ b/fs/udf/super.c
@@ -1175,8 +1175,7 @@ static int udf_load_vat(struct super_block *sb, int p_index, int type1_index)
struct udf_inode_info *vati;
uint32_t pos;
struct virtualAllocationTable20 *vat20;
- sector_t blocks = i_size_read(sb->s_bdev->bd_inode) >>
- sb->s_blocksize_bits;
+ sector_t blocks = sb_bdev_nr_blocks(sb);
udf_find_vat_block(sb, p_index, type1_index, sbi->s_last_block);
if (!sbi->s_vat_inode &&
@@ -1838,8 +1837,7 @@ static int udf_check_anchor_block(struct super_block *sb, sector_t block,
int ret;
if (UDF_QUERY_FLAG(sb, UDF_FLAG_VARCONV) &&
- udf_fixed_to_variable(block) >=
- i_size_read(sb->s_bdev->bd_inode) >> sb->s_blocksize_bits)
+ udf_fixed_to_variable(block) >= sb_bdev_nr_blocks(sb))
return -EAGAIN;
bh = udf_read_tagged(sb, block, block, &ident);
@@ -1901,8 +1899,7 @@ static int udf_scan_anchors(struct super_block *sb, sector_t *lastblock,
last[last_count++] = *lastblock - 152;
for (i = 0; i < last_count; i++) {
- if (last[i] >= i_size_read(sb->s_bdev->bd_inode) >>
- sb->s_blocksize_bits)
+ if (last[i] >= sb_bdev_nr_blocks(sb))
continue;
ret = udf_check_anchor_block(sb, last[i], fileset);
if (ret != -EAGAIN) {
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper
2021-10-15 13:26 ` [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper Christoph Hellwig
@ 2021-10-15 13:35 ` Matthew Wilcox
2021-10-15 13:37 ` Christoph Hellwig
2021-10-15 14:37 ` Anton Altaparmakov
1 sibling, 1 reply; 64+ messages in thread
From: Matthew Wilcox @ 2021-10-15 13:35 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:15PM +0200, Christoph Hellwig wrote:
> +static inline sector_t bdev_nr_bytes(struct block_device *bdev)
> +{
> + return i_size_read(bdev->bd_inode);
Uh. loff_t, surely?
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper
2021-10-15 13:35 ` Matthew Wilcox
@ 2021-10-15 13:37 ` Christoph Hellwig
0 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-15 13:37 UTC (permalink / raw)
To: Matthew Wilcox
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, Christoph Hellwig, drbd-dev, linux-nilfs,
linux-scsi, OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 02:35:15PM +0100, Matthew Wilcox wrote:
> On Fri, Oct 15, 2021 at 03:26:15PM +0200, Christoph Hellwig wrote:
> > +static inline sector_t bdev_nr_bytes(struct block_device *bdev)
> > +{
> > + return i_size_read(bdev->bd_inode);
>
> Uh. loff_t, surely?
Yes, that wuld be the right type. Note that it makes a difference
outside of documentation purposes.
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
@ 2021-10-15 13:44 ` Jan Kara
2021-10-15 15:45 ` Kees Cook
2021-10-18 6:21 ` Chaitanya Kulkarni
2 siblings, 0 replies; 64+ messages in thread
From: Jan Kara @ 2021-10-15 13:44 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri 15-10-21 15:26:14, Christoph Hellwig wrote:
> Ensure these are always available for inlines in the various block layer
> headers.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Looks good. Feel free to add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes " Christoph Hellwig
@ 2021-10-15 13:52 ` David Sterba
2021-10-15 16:59 ` Kees Cook
1 sibling, 0 replies; 64+ messages in thread
From: David Sterba @ 2021-10-15 13:52 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, Jens Axboe, linux-block,
linux-nfs, Theodore Ts'o, linux-ntfs-dev, Anand Jain,
Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:25PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Anand Jain <anand.jain@oracle.com>
> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Acked-by: David Sterba <dsterba@suse.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 19/30] nilfs2: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 19/30] nilfs2: " Christoph Hellwig
@ 2021-10-15 13:54 ` Ryusuke Konishi
2021-10-15 16:54 ` Kees Cook
1 sibling, 0 replies; 64+ messages in thread
From: Ryusuke Konishi @ 2021-10-15 13:54 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, device-mapper development,
target-devel, reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 10:27 PM Christoph Hellwig <hch@lst.de> wrote:
>
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Thanks,
Ryusuke Konishi
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 27/30] jfs: use sb_bdev_nr_blocks
2021-10-15 13:26 ` [dm-devel] [PATCH 27/30] jfs: " Christoph Hellwig
@ 2021-10-15 14:16 ` Dave Kleikamp
0 siblings, 0 replies; 64+ messages in thread
From: Dave Kleikamp @ 2021-10-15 14:16 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 8:26AM, Christoph Hellwig wrote:
> Use the sb_bdev_nr_blocks helper instead of open coding it.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Dave Kleikamp <dave.kleikamp@oracle.com>
> ---
> fs/jfs/resize.c | 3 +--
> fs/jfs/super.c | 3 +--
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/fs/jfs/resize.c b/fs/jfs/resize.c
> index a42dbb0d3d28a..8b9a72ae5efa7 100644
> --- a/fs/jfs/resize.c
> +++ b/fs/jfs/resize.c
> @@ -86,8 +86,7 @@ int jfs_extendfs(struct super_block *sb, s64 newLVSize, int newLogSize)
> goto out;
> }
>
> - VolumeSize = i_size_read(sb->s_bdev->bd_inode) >> sb->s_blocksize_bits;
> -
> + VolumeSize = sb_bdev_nr_blocks(sb);
> if (VolumeSize) {
> if (newLVSize > VolumeSize) {
> printk(KERN_WARNING "jfs_extendfs: invalid size\n");
> diff --git a/fs/jfs/super.c b/fs/jfs/super.c
> index 9241caa161163..24cbc9946e01c 100644
> --- a/fs/jfs/super.c
> +++ b/fs/jfs/super.c
> @@ -284,8 +284,7 @@ static int parse_options(char *options, struct super_block *sb, s64 *newLVSize,
> }
> case Opt_resize_nosize:
> {
> - *newLVSize = i_size_read(sb->s_bdev->bd_inode) >>
> - sb->s_blocksize_bits;
> + *newLVSize = sb_bdev_nr_blocks(sb);
> if (*newLVSize == 0)
> pr_err("JFS: Cannot determine volume size\n");
> break;
>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 28/30] ntfs: use sb_bdev_nr_blocks
2021-10-15 13:26 ` [dm-devel] [PATCH 28/30] ntfs: " Christoph Hellwig
@ 2021-10-15 14:35 ` Anton Altaparmakov
0 siblings, 0 replies; 64+ messages in thread
From: Anton Altaparmakov @ 2021-10-15 14:35 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi, linux-ext4,
Kees Cook, Josef Bacik, Coly Li, linux-raid, linux-bcache,
David Sterba, Ryusuke Konishi, OGAWA Hirofumi, Jens Axboe,
linux-block, linux-nfs, Theodore Ts'o, linux-ntfs-dev,
Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3, linux-btrfs
Hi Christoph,
Looks good, thank you.
Best regards,
Anton
> On 15 Oct 2021, at 14:26, Christoph Hellwig <hch@lst.de> wrote:
>
> Use the sb_bdev_nr_blocks helper instead of open coding it and clean up
> ntfs_fill_super a bit by moving an assignment a little earlier that has
> no negative side effects.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Anton Altaparmakov <anton@tuxera.com>
> ---
> fs/ntfs/super.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/fs/ntfs/super.c b/fs/ntfs/super.c
> index 0d7e948cb29c9..5ae8de09b271b 100644
> --- a/fs/ntfs/super.c
> +++ b/fs/ntfs/super.c
> @@ -2772,13 +2772,12 @@ static int ntfs_fill_super(struct super_block *sb, void *opt, const int silent)
> ntfs_debug("Set device block size to %i bytes (block size bits %i).",
> blocksize, sb->s_blocksize_bits);
> /* Determine the size of the device in units of block_size bytes. */
> - if (!i_size_read(sb->s_bdev->bd_inode)) {
> + vol->nr_blocks = sb_bdev_nr_blocks(sb);
> + if (!vol->nr_blocks) {
> if (!silent)
> ntfs_error(sb, "Unable to determine device size.");
> goto err_out_now;
> }
> - vol->nr_blocks = i_size_read(sb->s_bdev->bd_inode) >>
> - sb->s_blocksize_bits;
> /* Read the boot sector and return unlocked buffer head to it. */
> if (!(bh = read_ntfs_boot_sector(sb, silent))) {
> if (!silent)
> @@ -2816,8 +2815,7 @@ static int ntfs_fill_super(struct super_block *sb, void *opt, const int silent)
> goto err_out_now;
> }
> BUG_ON(blocksize != sb->s_blocksize);
> - vol->nr_blocks = i_size_read(sb->s_bdev->bd_inode) >>
> - sb->s_blocksize_bits;
> + vol->nr_blocks = sb_bdev_nr_blocks(sb);
> ntfs_debug("Changed device block size to %i bytes (block size "
> "bits %i) to match volume sector size.",
> blocksize, sb->s_blocksize_bits);
> --
> 2.30.2
>
--
Anton Altaparmakov <anton at tuxera.com> (replace at with @)
Lead in File System Development, Tuxera Inc., http://www.tuxera.com/
Linux NTFS maintainer
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper
2021-10-15 13:26 ` [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper Christoph Hellwig
2021-10-15 13:35 ` Matthew Wilcox
@ 2021-10-15 14:37 ` Anton Altaparmakov
2021-10-15 15:49 ` Kees Cook
1 sibling, 1 reply; 64+ messages in thread
From: Anton Altaparmakov @ 2021-10-15 14:37 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi, linux-ext4,
Kees Cook, Josef Bacik, Coly Li, linux-raid, linux-bcache,
David Sterba, Ryusuke Konishi, OGAWA Hirofumi, Jens Axboe,
linux-block, linux-nfs, Theodore Ts'o, linux-ntfs-dev,
Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3, linux-btrfs
Hi Christoph,
> On 15 Oct 2021, at 14:26, Christoph Hellwig <hch@lst.de> wrote:
>
> Add a helpe to query the size of a block device in bytes. This
> will be used to remove open coded access to ->bd_inode.
Matthew already pointed out the return type for bdev_nr_bytes() but also your commit message has a typo: "Add a helpe" -> "Add a helper".
Best regards,
Anton
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
> include/linux/genhd.h | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/include/linux/genhd.h b/include/linux/genhd.h
> index 082a3e5fd8fa1..f67db3c5a04b3 100644
> --- a/include/linux/genhd.h
> +++ b/include/linux/genhd.h
> @@ -235,9 +235,14 @@ static inline sector_t get_start_sect(struct block_device *bdev)
> return bdev->bd_start_sect;
> }
>
> +static inline sector_t bdev_nr_bytes(struct block_device *bdev)
> +{
> + return i_size_read(bdev->bd_inode);
> +}
> +
> static inline sector_t bdev_nr_sectors(struct block_device *bdev)
> {
> - return i_size_read(bdev->bd_inode) >> 9;
> + return bdev_nr_bytes(bdev) >> SECTOR_SHIFT;
> }
>
> static inline sector_t get_capacity(struct gendisk *disk)
> --
> 2.30.2
>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
2021-10-15 13:44 ` Jan Kara
@ 2021-10-15 15:45 ` Kees Cook
2021-10-18 6:21 ` Chaitanya Kulkarni
2 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 15:45 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:14PM +0200, Christoph Hellwig wrote:
> Ensure these are always available for inlines in the various block layer
> headers.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Awesome, yes. Thanks!
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper
2021-10-15 14:37 ` Anton Altaparmakov
@ 2021-10-15 15:49 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 15:49 UTC (permalink / raw)
To: Anton Altaparmakov
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, Christoph Hellwig, drbd-dev, linux-nilfs,
linux-scsi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, OGAWA Hirofumi,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 02:37:41PM +0000, Anton Altaparmakov wrote:
> Hi Christoph,
>
> > On 15 Oct 2021, at 14:26, Christoph Hellwig <hch@lst.de> wrote:
> >
> > Add a helpe to query the size of a block device in bytes. This
> > will be used to remove open coded access to ->bd_inode.
>
> Matthew already pointed out the return type for bdev_nr_bytes() but also your commit message has a typo: "Add a helpe" -> "Add a helper".
Right. With these fixed, I'm a fan. :)
Reviewed-by: Kees Cook <keescook@chromium.org>
-Kees
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 07/30] nvmet: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 07/30] nvmet: use bdev_nr_bytes " Christoph Hellwig
@ 2021-10-15 15:51 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 15:51 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:20PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 08/30] target/iblock: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 08/30] target/iblock: " Christoph Hellwig
@ 2021-10-15 15:57 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 15:57 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:21PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Is this basically an open-coded non-sb version of sb_bdev_nr_blocks()?
Reviewed-by: Kees Cook <keescook@chromium.org>
> ---
> drivers/target/target_core_iblock.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/target/target_core_iblock.c b/drivers/target/target_core_iblock.c
> index 31df20abe141f..b1ef041cacd81 100644
> --- a/drivers/target/target_core_iblock.c
> +++ b/drivers/target/target_core_iblock.c
> @@ -232,9 +232,9 @@ static unsigned long long iblock_emulate_read_cap_with_block_size(
> struct block_device *bd,
> struct request_queue *q)
> {
> - unsigned long long blocks_long = (div_u64(i_size_read(bd->bd_inode),
> - bdev_logical_block_size(bd)) - 1);
> u32 block_size = bdev_logical_block_size(bd);
> + unsigned long long blocks_long =
> + div_u64(bdev_nr_bytes(bd), block_size) - 1;
>
> if (block_size == dev->dev_attrib.block_size)
> return blocks_long;
> --
> 2.30.2
>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 09/30] fs: use bdev_nr_bytes instead of open coding it in blkdev_max_block
2021-10-15 13:26 ` [dm-devel] [PATCH 09/30] fs: use bdev_nr_bytes instead of open coding it in blkdev_max_block Christoph Hellwig
@ 2021-10-15 16:00 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:00 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:22PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 13/30] cramfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 13/30] cramfs: " Christoph Hellwig
@ 2021-10-15 16:51 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:51 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:26PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 17/30] jfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 17/30] jfs: use bdev_nr_bytes " Christoph Hellwig
@ 2021-10-15 16:53 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:53 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, Dave Kleikamp, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:30PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 18/30] nfs/blocklayout: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 18/30] nfs/blocklayout: " Christoph Hellwig
@ 2021-10-15 16:54 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:54 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:31PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 19/30] nilfs2: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 19/30] nilfs2: " Christoph Hellwig
2021-10-15 13:54 ` Ryusuke Konishi
@ 2021-10-15 16:54 ` Kees Cook
1 sibling, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:54 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:32PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 20/30] ntfs3: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 20/30] ntfs3: " Christoph Hellwig
@ 2021-10-15 16:54 ` Kees Cook
2021-10-16 7:40 ` Kari Argillander
1 sibling, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:54 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:33PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 21/30] pstore/blk: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 21/30] pstore/blk: " Christoph Hellwig
@ 2021-10-15 16:56 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:56 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:34PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Thanks for the bdev_by_bytes() helper; this is more readable now. :)
Acked-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 22/30] reiserfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 22/30] reiserfs: " Christoph Hellwig
@ 2021-10-15 16:56 ` Kees Cook
2021-10-18 6:22 ` Chaitanya Kulkarni
1 sibling, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:56 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:35PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size and remove two
> cargo culted checks that can't be false.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 23/30] squashfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 23/30] squashfs: " Christoph Hellwig
@ 2021-10-15 16:57 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:57 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:36PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 24/30] block: use bdev_nr_bytes instead of open coding it in blkdev_fallocate
2021-10-15 13:26 ` [dm-devel] [PATCH 24/30] block: use bdev_nr_bytes instead of open coding it in blkdev_fallocate Christoph Hellwig
@ 2021-10-15 16:57 ` Kees Cook
0 siblings, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:57 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:37PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper
2021-10-15 13:26 ` [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper Christoph Hellwig
@ 2021-10-15 16:58 ` Kees Cook
2021-10-18 5:48 ` Chaitanya Kulkarni
1 sibling, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:58 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Josef Bacik, Coly Li, linux-raid,
linux-bcache, David Sterba, Ryusuke Konishi, Anton Altaparmakov,
Jens Axboe, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On Fri, Oct 15, 2021 at 03:26:38PM +0200, Christoph Hellwig wrote:
> Add a helper to return the size of sb->s_bdev in sb->s_blocksize_bits
> based unites. Note that SECTOR_SHIFT has to be open coded due to
> include dependency issues for now, but I have a plan to sort that out
> eventually.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
You can adjust this changelog to remove the note about SECTOR_SHIFT
now. :)
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes " Christoph Hellwig
2021-10-15 13:52 ` David Sterba
@ 2021-10-15 16:59 ` Kees Cook
1 sibling, 0 replies; 64+ messages in thread
From: Kees Cook @ 2021-10-15 16:59 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Anand Jain, Jan Kara,
linux-fsdevel, Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:25PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
--
Kees Cook
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 04/30] drbd: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 04/30] drbd: use bdev_nr_sectors instead of open coding it Christoph Hellwig
@ 2021-10-15 18:00 ` Lee Duncan
0 siblings, 0 replies; 64+ messages in thread
From: Lee Duncan @ 2021-10-15 18:00 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On 10/15/21 6:26 AM, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Kees Cook <keescook@chromium.org>
> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
> ---
> drivers/block/drbd/drbd_int.h | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h
> index 5d9181382ce19..75fda53eed8cf 100644
> --- a/drivers/block/drbd/drbd_int.h
> +++ b/drivers/block/drbd/drbd_int.h
> @@ -1826,8 +1826,7 @@ static inline sector_t drbd_md_last_sector(struct drbd_backing_dev *bdev)
> /* Returns the number of 512 byte sectors of the device */
> static inline sector_t drbd_get_capacity(struct block_device *bdev)
> {
> - /* return bdev ? get_capacity(bdev->bd_disk) : 0; */
> - return bdev ? i_size_read(bdev->bd_inode) >> 9 : 0;
> + return bdev ? bdev_nr_sectors(bdev) : 0;
> }
>
> /**
>
Reviewed-by: Lee Duncan <lduncan@suse.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 20/30] ntfs3: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 20/30] ntfs3: " Christoph Hellwig
2021-10-15 16:54 ` Kees Cook
@ 2021-10-16 7:40 ` Kari Argillander
1 sibling, 0 replies; 64+ messages in thread
From: Kari Argillander @ 2021-10-16 7:40 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Kees Cook, Josef Bacik, Coly Li,
linux-raid, linux-bcache, David Sterba, Ryusuke Konishi,
Anton Altaparmakov, Jens Axboe, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Jan Kara, linux-fsdevel,
Phillip Lougher, ntfs3, linux-btrfs
On Fri, Oct 15, 2021 at 03:26:33PM +0200, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
> fs/ntfs3/super.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/fs/ntfs3/super.c b/fs/ntfs3/super.c
> index 55bbc9200a10e..7ed2cb5e8b1d9 100644
> --- a/fs/ntfs3/super.c
> +++ b/fs/ntfs3/super.c
> @@ -918,7 +918,6 @@ static int ntfs_fill_super(struct super_block *sb, void *data, int silent)
> int err;
> struct ntfs_sb_info *sbi;
> struct block_device *bdev = sb->s_bdev;
> - struct inode *bd_inode = bdev->bd_inode;
Linus merged latest ntfs3 stuff and this temp variable is not anymore in
upstream. So this patch will conflict. Just so that you know.
> struct request_queue *rq = bdev_get_queue(bdev);
> struct inode *inode = NULL;
> struct ntfs_inode *ni;
> @@ -967,7 +966,7 @@ static int ntfs_fill_super(struct super_block *sb, void *data, int silent)
>
> /* Parse boot. */
> err = ntfs_init_from_boot(sb, rq ? queue_logical_block_size(rq) : 512,
> - bd_inode->i_size);
> + bdev_nr_bytes(bdev));
> if (err)
> goto out;
>
> --
> 2.30.2
>
>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 03/30] bcache: remove bdev_sectors
2021-10-15 13:26 ` [dm-devel] [PATCH 03/30] bcache: remove bdev_sectors Christoph Hellwig
@ 2021-10-18 5:46 ` Chaitanya Kulkarni
0 siblings, 0 replies; 64+ messages in thread
From: Chaitanya Kulkarni @ 2021-10-18 5:46 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, Ryusuke, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 06:26, Christoph Hellwig wrote:
> Use the equivalent block layer helper instead.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Kees Cook <keescook@chromium.org>
> Acked-by: Coly Li <colyli@suse.de>
> ---
Looks good.
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper
2021-10-15 13:26 ` [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper Christoph Hellwig
2021-10-15 16:58 ` Kees Cook
@ 2021-10-18 5:48 ` Chaitanya Kulkarni
1 sibling, 0 replies; 64+ messages in thread
From: Chaitanya Kulkarni @ 2021-10-18 5:48 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, Ryusuke, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 06:26, Christoph Hellwig wrote:
> Add a helper to return the size of sb->s_bdev in sb->s_blocksize_bits
> based unites. Note that SECTOR_SHIFT has to be open coded due to
> include dependency issues for now, but I have a plan to sort that out
> eventually.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Looks good.
Reviewed-by: Chiatanya Kulkarni <kch@nvidia.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 26/30] ext4: use sb_bdev_nr_blocks
2021-10-15 13:26 ` [dm-devel] [PATCH 26/30] ext4: use sb_bdev_nr_blocks Christoph Hellwig
@ 2021-10-18 5:48 ` Chaitanya Kulkarni
0 siblings, 0 replies; 64+ messages in thread
From: Chaitanya Kulkarni @ 2021-10-18 5:48 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, Ryusuke, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 06:26, Christoph Hellwig wrote:
> Use the sb_bdev_nr_blocks helper instead of open coding it.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Kees Cook <keescook@chromium.org>
> Reviewed-by: Jan Kara <jack@suse.cz>
> Acked-by: Theodore Ts'o <tytso@mit.edu>
>
Looks good.
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
2021-10-15 13:44 ` Jan Kara
2021-10-15 15:45 ` Kees Cook
@ 2021-10-18 6:21 ` Chaitanya Kulkarni
2 siblings, 0 replies; 64+ messages in thread
From: Chaitanya Kulkarni @ 2021-10-18 6:21 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, Ryusuke, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 06:26, Christoph Hellwig wrote:
> Ensure these are always available for inlines in the various block layer
> headers.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Looks good.
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 22/30] reiserfs: use bdev_nr_bytes instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 22/30] reiserfs: " Christoph Hellwig
2021-10-15 16:56 ` Kees Cook
@ 2021-10-18 6:22 ` Chaitanya Kulkarni
1 sibling, 0 replies; 64+ messages in thread
From: Chaitanya Kulkarni @ 2021-10-18 6:22 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Jan Kara, Mike Snitzer,
linux-nvme, Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, Ryusuke, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 06:26, Christoph Hellwig wrote:
> Use the proper helper to read the block device size and remove two
> cargo culted checks that can't be false.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Jan Kara <jack@suse.cz>
Looks good.
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [dm-devel] [PATCH 11/30] affs: use bdev_nr_sectors instead of open coding it
2021-10-15 13:26 ` [dm-devel] [PATCH 11/30] affs: use bdev_nr_sectors instead of open coding it Christoph Hellwig
@ 2021-10-18 6:22 ` Chaitanya Kulkarni
0 siblings, 0 replies; 64+ messages in thread
From: Chaitanya Kulkarni @ 2021-10-18 6:22 UTC (permalink / raw)
To: Christoph Hellwig, Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, Ryusuke, linux-ext4, Kees Cook, Josef Bacik,
Coly Li, linux-raid, linux-bcache, David Sterba, Konishi,
Anton Altaparmakov, linux-block, linux-nfs, Theodore Ts'o,
linux-ntfs-dev, Jan Kara, linux-fsdevel, Phillip Lougher, ntfs3,
linux-btrfs
On 10/15/21 06:26, Christoph Hellwig wrote:
> Use the proper helper to read the block device size.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reviewed-by: Kees Cook <keescook@chromium.org>
Looks good.
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 64+ messages in thread
* [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes instead of open coding it
2021-10-18 10:11 [dm-devel] don't use ->bd_inode to access the block device size v3 Christoph Hellwig
@ 2021-10-18 10:11 ` Christoph Hellwig
0 siblings, 0 replies; 64+ messages in thread
From: Christoph Hellwig @ 2021-10-18 10:11 UTC (permalink / raw)
To: Jens Axboe
Cc: Dave Kleikamp, jfs-discussion, Mike Snitzer, linux-nvme,
Konstantin Komarov, Song Liu, dm-devel, target-devel,
reiserfs-devel, drbd-dev, linux-nilfs, linux-scsi,
OGAWA Hirofumi, linux-ext4, Chaitanya Kulkarni, Kees Cook,
Josef Bacik, Coly Li, linux-raid, linux-bcache, David Sterba,
Ryusuke Konishi, Anton Altaparmakov, linux-block, linux-nfs,
Theodore Ts'o, linux-ntfs-dev, Anand Jain, Jan Kara,
linux-fsdevel, Phillip Lougher, ntfs3, linux-btrfs
Use the proper helper to read the block device size.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Acked-by: David Sterba <dsterba@suse.com>
---
fs/btrfs/dev-replace.c | 3 +--
fs/btrfs/disk-io.c | 2 +-
fs/btrfs/ioctl.c | 4 ++--
fs/btrfs/volumes.c | 8 ++++----
4 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/fs/btrfs/dev-replace.c b/fs/btrfs/dev-replace.c
index d029be40ea6f0..fbb8b4457a721 100644
--- a/fs/btrfs/dev-replace.c
+++ b/fs/btrfs/dev-replace.c
@@ -283,8 +283,7 @@ static int btrfs_init_dev_replace_tgtdev(struct btrfs_fs_info *fs_info,
}
- if (i_size_read(bdev->bd_inode) <
- btrfs_device_get_total_bytes(srcdev)) {
+ if (bdev_nr_bytes(bdev) < btrfs_device_get_total_bytes(srcdev)) {
btrfs_err(fs_info,
"target device is smaller than source device!");
ret = -EINVAL;
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 355ea88d5c5f7..29e7598584c4c 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -3740,7 +3740,7 @@ struct btrfs_super_block *btrfs_read_dev_one_super(struct block_device *bdev,
else if (ret)
return ERR_PTR(ret);
- if (bytenr + BTRFS_SUPER_INFO_SIZE >= i_size_read(bdev->bd_inode))
+ if (bytenr + BTRFS_SUPER_INFO_SIZE >= bdev_nr_bytes(bdev))
return ERR_PTR(-EINVAL);
page = read_cache_page_gfp(mapping, bytenr >> PAGE_SHIFT, GFP_NOFS);
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index cc61813213d83..36ff713da1b12 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -1730,7 +1730,7 @@ static noinline int btrfs_ioctl_resize(struct file *file,
}
if (!strcmp(sizestr, "max"))
- new_size = device->bdev->bd_inode->i_size;
+ new_size = bdev_nr_bytes(device->bdev);
else {
if (sizestr[0] == '-') {
mod = -1;
@@ -1771,7 +1771,7 @@ static noinline int btrfs_ioctl_resize(struct file *file,
ret = -EINVAL;
goto out_finish;
}
- if (new_size > device->bdev->bd_inode->i_size) {
+ if (new_size > bdev_nr_bytes(device->bdev)) {
ret = -EFBIG;
goto out_finish;
}
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 2ec3b8ac8fa35..676c7c4e6e59d 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -1286,7 +1286,7 @@ static struct btrfs_super_block *btrfs_read_disk_super(struct block_device *bdev
pgoff_t index;
/* make sure our super fits in the device */
- if (bytenr + PAGE_SIZE >= i_size_read(bdev->bd_inode))
+ if (bytenr + PAGE_SIZE >= bdev_nr_bytes(bdev))
return ERR_PTR(-EINVAL);
/* make sure our super fits in the page */
@@ -2610,8 +2610,8 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
device->io_width = fs_info->sectorsize;
device->io_align = fs_info->sectorsize;
device->sector_size = fs_info->sectorsize;
- device->total_bytes = round_down(i_size_read(bdev->bd_inode),
- fs_info->sectorsize);
+ device->total_bytes =
+ round_down(bdev_nr_bytes(bdev), fs_info->sectorsize);
device->disk_total_bytes = device->total_bytes;
device->commit_total_bytes = device->total_bytes;
set_bit(BTRFS_DEV_STATE_IN_FS_METADATA, &device->dev_state);
@@ -7236,7 +7236,7 @@ static int read_one_dev(struct extent_buffer *leaf,
fill_device_from_item(leaf, dev_item, device);
if (device->bdev) {
- u64 max_total_bytes = i_size_read(device->bdev->bd_inode);
+ u64 max_total_bytes = bdev_nr_bytes(device->bdev);
if (device->total_bytes > max_total_bytes) {
btrfs_err(fs_info,
--
2.30.2
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply related [flat|nested] 64+ messages in thread
end of thread, other threads:[~2021-10-18 10:12 UTC | newest]
Thread overview: 64+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-15 13:26 [dm-devel] don't use ->bd_inode to access the block device size v2 Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 01/30] block: move the SECTOR_SIZE related definitions to blk_types.h Christoph Hellwig
2021-10-15 13:44 ` Jan Kara
2021-10-15 15:45 ` Kees Cook
2021-10-18 6:21 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 02/30] block: add a bdev_nr_bytes helper Christoph Hellwig
2021-10-15 13:35 ` Matthew Wilcox
2021-10-15 13:37 ` Christoph Hellwig
2021-10-15 14:37 ` Anton Altaparmakov
2021-10-15 15:49 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 03/30] bcache: remove bdev_sectors Christoph Hellwig
2021-10-18 5:46 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 04/30] drbd: use bdev_nr_sectors instead of open coding it Christoph Hellwig
2021-10-15 18:00 ` Lee Duncan
2021-10-15 13:26 ` [dm-devel] [PATCH 05/30] dm: use bdev_nr_sectors and bdev_nr_bytes instead of open coding them Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 06/30] md: use bdev_nr_sectors instead of open coding it Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 07/30] nvmet: use bdev_nr_bytes " Christoph Hellwig
2021-10-15 15:51 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 08/30] target/iblock: " Christoph Hellwig
2021-10-15 15:57 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 09/30] fs: use bdev_nr_bytes instead of open coding it in blkdev_max_block Christoph Hellwig
2021-10-15 16:00 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 10/30] fs: simplify init_page_buffers Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 11/30] affs: use bdev_nr_sectors instead of open coding it Christoph Hellwig
2021-10-18 6:22 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes " Christoph Hellwig
2021-10-15 13:52 ` David Sterba
2021-10-15 16:59 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 13/30] cramfs: " Christoph Hellwig
2021-10-15 16:51 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 14/30] fat: use bdev_nr_sectors " Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 15/30] hfs: " Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 16/30] hfsplus: " Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 17/30] jfs: use bdev_nr_bytes " Christoph Hellwig
2021-10-15 16:53 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 18/30] nfs/blocklayout: " Christoph Hellwig
2021-10-15 16:54 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 19/30] nilfs2: " Christoph Hellwig
2021-10-15 13:54 ` Ryusuke Konishi
2021-10-15 16:54 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 20/30] ntfs3: " Christoph Hellwig
2021-10-15 16:54 ` Kees Cook
2021-10-16 7:40 ` Kari Argillander
2021-10-15 13:26 ` [dm-devel] [PATCH 21/30] pstore/blk: " Christoph Hellwig
2021-10-15 16:56 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 22/30] reiserfs: " Christoph Hellwig
2021-10-15 16:56 ` Kees Cook
2021-10-18 6:22 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 23/30] squashfs: " Christoph Hellwig
2021-10-15 16:57 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 24/30] block: use bdev_nr_bytes instead of open coding it in blkdev_fallocate Christoph Hellwig
2021-10-15 16:57 ` Kees Cook
2021-10-15 13:26 ` [dm-devel] [PATCH 25/30] block: add a sb_bdev_nr_blocks helper Christoph Hellwig
2021-10-15 16:58 ` Kees Cook
2021-10-18 5:48 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 26/30] ext4: use sb_bdev_nr_blocks Christoph Hellwig
2021-10-18 5:48 ` Chaitanya Kulkarni
2021-10-15 13:26 ` [dm-devel] [PATCH 27/30] jfs: " Christoph Hellwig
2021-10-15 14:16 ` Dave Kleikamp
2021-10-15 13:26 ` [dm-devel] [PATCH 28/30] ntfs: " Christoph Hellwig
2021-10-15 14:35 ` Anton Altaparmakov
2021-10-15 13:26 ` [dm-devel] [PATCH 29/30] reiserfs: " Christoph Hellwig
2021-10-15 13:26 ` [dm-devel] [PATCH 30/30] udf: " Christoph Hellwig
2021-10-18 10:11 [dm-devel] don't use ->bd_inode to access the block device size v3 Christoph Hellwig
2021-10-18 10:11 ` [dm-devel] [PATCH 12/30] btrfs: use bdev_nr_bytes instead of open coding it Christoph Hellwig
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).