Messages in this thread Patch in this message | | | From | Pavel Begunkov <> | Subject | [PATCH 2/6] block: inline BDEV_I and friends | Date | Sat, 9 Oct 2021 13:25:39 +0100 |
| |
I_BDEV and BDEV_I are very simple, they worth a single arith instruction or can even be almost completely compiled out. Inline them.
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> --- block/bdev.c | 16 ---------------- include/linux/blkdev.h | 16 +++++++++++++++- 2 files changed, 15 insertions(+), 17 deletions(-)
diff --git a/block/bdev.c b/block/bdev.c index 567534c63f3d..a6cdfc49bc7e 100644 --- a/block/bdev.c +++ b/block/bdev.c @@ -30,22 +30,6 @@ #include "../fs/internal.h" #include "blk.h" -struct bdev_inode { - struct block_device bdev; - struct inode vfs_inode; -}; - -static inline struct bdev_inode *BDEV_I(struct inode *inode) -{ - return container_of(inode, struct bdev_inode, vfs_inode); -} - -struct block_device *I_BDEV(struct inode *inode) -{ - return &BDEV_I(inode)->bdev; -} -EXPORT_SYMBOL(I_BDEV); - static void bdev_write_inode(struct block_device *bdev) { struct inode *inode = bdev->bd_inode; diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 4522acee81fb..591f14522f78 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -1271,10 +1271,24 @@ void blkdev_put_no_open(struct block_device *bdev); struct block_device *bdev_alloc(struct gendisk *disk, u8 partno); void bdev_add(struct block_device *bdev, dev_t dev); -struct block_device *I_BDEV(struct inode *inode); int truncate_bdev_range(struct block_device *bdev, fmode_t mode, loff_t lstart, loff_t lend); +struct bdev_inode { + struct block_device bdev; + struct inode vfs_inode; +}; + +static inline struct bdev_inode *BDEV_I(struct inode *inode) +{ + return container_of(inode, struct bdev_inode, vfs_inode); +} + +static inline struct block_device *I_BDEV(struct inode *inode) +{ + return &BDEV_I(inode)->bdev; +} + #ifdef CONFIG_BLOCK void invalidate_bdev(struct block_device *bdev); int sync_blockdev(struct block_device *bdev); -- 2.33.0
| |