This is called for every write in the fast path, move it inline next to get_disk_ro() which is called internally. Signed-off-by: Jens Axboe <axboe@xxxxxxxxx> --- diff --git a/block/genhd.c b/block/genhd.c index 53495e3391e3..000e344265ca 100644 --- a/block/genhd.c +++ b/block/genhd.c @@ -1390,12 +1390,6 @@ void set_disk_ro(struct gendisk *disk, bool read_only) } EXPORT_SYMBOL(set_disk_ro); -int bdev_read_only(struct block_device *bdev) -{ - return bdev->bd_read_only || get_disk_ro(bdev->bd_disk); -} -EXPORT_SYMBOL(bdev_read_only); - void inc_diskseq(struct gendisk *disk) { disk->diskseq = atomic64_inc_return(&diskseq); diff --git a/include/linux/genhd.h b/include/linux/genhd.h index 001f617f82da..d13d0f463b03 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); -- Jens Axboe