Message ID | 20241210062340.2386-1-evepolonium@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | THE INITIAL VALUE OF wp_offset MAY BE NOT THE POWER OF 2 | expand |
On 10.12.24 07:24, Atharva Tiwari wrote: > Signed-off-by: Atharva Tiwari <evepolonium@gmail.com> > --- You at least need to state why. > block/blk-zoned.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/block/blk-zoned.c b/block/blk-zoned.c > index 263e28b72053..60f8bddf9295 100644 > --- a/block/blk-zoned.c > +++ b/block/blk-zoned.c > @@ -1,3 +1,4 @@ > + > // SPDX-License-Identifier: GPL-2.0 > /* > * Zoned block device handling > @@ -530,7 +531,7 @@ static struct blk_zone_wplug *disk_get_and_lock_zone_wplug(struct gendisk *disk, > spin_lock_init(&zwplug->lock); > zwplug->flags = 0; > zwplug->zone_no = zno; > - zwplug->wp_offset = sector & (disk->queue->limits.chunk_sectors - 1); > + zwplug->wp_offset = bdev_offset_from_zone_start(disk->part0, sector); > bio_list_init(&zwplug->bio_list); > INIT_WORK(&zwplug->bio_work, blk_zone_wplug_bio_work); > zwplug->disk = disk;
On Tue, Dec 10, 2024 at 07:09:00AM +0000, Johannes Thumshirn wrote: > On 10.12.24 07:24, Atharva Tiwari wrote: > > Signed-off-by: Atharva Tiwari <evepolonium@gmail.com> > > --- > > You at least need to state why. Which will be hard to prove given that we atually check that it can't during disk registration.
On 10.12.24 08:11, Christoph Hellwig wrote: > On Tue, Dec 10, 2024 at 07:09:00AM +0000, Johannes Thumshirn wrote: >> On 10.12.24 07:24, Atharva Tiwari wrote: >>> Signed-off-by: Atharva Tiwari <evepolonium@gmail.com> >>> --- >> >> You at least need to state why. > > Which will be hard to prove given that we atually check that it can't > during disk registration. > > I know, so I wanted the explanation ;)
On 12/9/24 10:23 PM, Atharva Tiwari wrote: > @@ -530,7 +531,7 @@ static struct blk_zone_wplug *disk_get_and_lock_zone_wplug(struct gendisk *disk, > spin_lock_init(&zwplug->lock); > zwplug->flags = 0; > zwplug->zone_no = zno; > - zwplug->wp_offset = sector & (disk->queue->limits.chunk_sectors - 1); > + zwplug->wp_offset = bdev_offset_from_zone_start(disk->part0, sector); > bio_list_init(&zwplug->bio_list); > INIT_WORK(&zwplug->bio_work, blk_zone_wplug_bio_work); > zwplug->disk = disk; The above looks like a duplicate of this patch: https://lore.kernel.org/linux-block/20241107020439.1644577-1-weilongping@oppo.com/
diff --git a/block/blk-zoned.c b/block/blk-zoned.c index 263e28b72053..60f8bddf9295 100644 --- a/block/blk-zoned.c +++ b/block/blk-zoned.c @@ -1,3 +1,4 @@ + // SPDX-License-Identifier: GPL-2.0 /* * Zoned block device handling @@ -530,7 +531,7 @@ static struct blk_zone_wplug *disk_get_and_lock_zone_wplug(struct gendisk *disk, spin_lock_init(&zwplug->lock); zwplug->flags = 0; zwplug->zone_no = zno; - zwplug->wp_offset = sector & (disk->queue->limits.chunk_sectors - 1); + zwplug->wp_offset = bdev_offset_from_zone_start(disk->part0, sector); bio_list_init(&zwplug->bio_list); INIT_WORK(&zwplug->bio_work, blk_zone_wplug_bio_work); zwplug->disk = disk;
Signed-off-by: Atharva Tiwari <evepolonium@gmail.com> --- block/blk-zoned.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)