summaryrefslogtreecommitdiff
path: root/include/linux/genhd.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2021-10-06 15:15:04 +0300
committerJens Axboe <axboe@kernel.dk>2021-10-19 14:53:22 +0300
commitdb9a02baa23267c695a44234a0f2f4607992780e (patch)
tree5763bbfbcb0774571843d21bcd340cc219ff397b /include/linux/genhd.h
parente0d78afeb8d190164a823d5ef5821b0b3802af33 (diff)
downloadlinux-db9a02baa23267c695a44234a0f2f4607992780e.tar.xz
block: move bdev_read_only() into the header
This is called for every write in the fast path, move it inline next to get_disk_ro() which is called internally. Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/genhd.h')
-rw-r--r--include/linux/genhd.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index cd4038fd5743..c70bc5fce4db 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -221,6 +221,11 @@ static inline int get_disk_ro(struct gendisk *disk)
test_bit(GD_READ_ONLY, &disk->state);
}
+static inline int bdev_read_only(struct block_device *bdev)
+{
+ return bdev->bd_read_only || get_disk_ro(bdev->bd_disk);
+}
+
extern void disk_block_events(struct gendisk *disk);
extern void disk_unblock_events(struct gendisk *disk);
extern void disk_flush_events(struct gendisk *disk, unsigned int mask);