From: Christoph Hellwig Date: Fri, 30 Jan 2026 05:19:22 +0000 (+0100) Subject: xfs: don't mark all discard issued by zoned GC as sync X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=32ae9b893a1dc341274ffabd3cdcc63134f36060;p=thirdparty%2Fkernel%2Flinux.git xfs: don't mark all discard issued by zoned GC as sync Discard are not usually sync when issued from zoned garbage collection, so drop the REQ_SYNC flag. Fixes: 080d01c41d44 ("xfs: implement zoned garbage collection") Signed-off-by: Christoph Hellwig Reviewed-by: Carlos Maiolino Reviewed-by: Hans Holmberg Reviewed-by: Darrick J. Wong Signed-off-by: Carlos Maiolino --- diff --git a/fs/xfs/xfs_zone_gc.c b/fs/xfs/xfs_zone_gc.c index 7bdc5043cc1a7..60964c926f9f9 100644 --- a/fs/xfs/xfs_zone_gc.c +++ b/fs/xfs/xfs_zone_gc.c @@ -905,7 +905,8 @@ xfs_zone_gc_prepare_reset( if (!bdev_zone_is_seq(bio->bi_bdev, bio->bi_iter.bi_sector)) { if (!bdev_max_discard_sectors(bio->bi_bdev)) return false; - bio->bi_opf = REQ_OP_DISCARD | REQ_SYNC; + bio->bi_opf &= ~REQ_OP_ZONE_RESET; + bio->bi_opf |= REQ_OP_DISCARD; bio->bi_iter.bi_size = XFS_FSB_TO_B(rtg_mount(rtg), rtg_blocks(rtg)); }