diff options
| author | Christoph Hellwig <hch@lst.de> | 2026-01-30 06:19:22 +0100 |
|---|---|---|
| committer | Carlos Maiolino <cem@kernel.org> | 2026-01-30 10:41:42 +0100 |
| commit | 32ae9b893a1dc341274ffabd3cdcc63134f36060 (patch) | |
| tree | bc8108bbd513495953881eb6193968adb247468a | |
| parent | 2d263debd7f1df2091efb4c06eda02ab04b68562 (diff) | |
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 <hch@lst.de>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Reviewed-by: Hans Holmberg <hans.holmberg@wdc.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
| -rw-r--r-- | fs/xfs/xfs_zone_gc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/xfs_zone_gc.c b/fs/xfs/xfs_zone_gc.c index 7bdc5043cc1a..60964c926f9f 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)); } |
