Re: [RFC PATCH V3 1/1] block: reject I/O for same fd if block size changed
From: Christoph Hellwig <hch@lst.de>
Date: 2021-01-04 17:12:23
Also in:
linux-fsdevel, lkml
From: Christoph Hellwig <hch@lst.de>
Date: 2021-01-04 17:12:23
Also in:
linux-fsdevel, lkml
On Mon, Jan 04, 2021 at 10:06:59PM +0900, Minwoo Im wrote:
+ if (q->backing_dev_info && q->backing_dev_info->owner &&
+ limits->logical_block_size != size) {
+ bdev = blkdev_get_no_open(q->backing_dev_info->owner->devt);
+ bdev->bd_disk->flags |= GENHD_FL_BLOCK_SIZE_CHANGED;
+ blkdev_put_no_open(bdev);
+ }We really need the backpointer from the queue to the gendisk I've wanted to add for a while. Can we at least restrict this to a live gendisk? Also I think the size change flag should go into the ->state field and use the atomic bitops helpers to avoid concurrency problems.