diff options
| author | Johannes Thumshirn <johannes.thumshirn@wdc.com> | 2026-07-16 10:23:12 +0200 |
|---|---|---|
| committer | David Sterba <dsterba@suse.com> | 2026-07-21 06:43:46 +0200 |
| commit | ab602da96a915d42dcb1b0b322e8daea0f71b51f (patch) | |
| tree | a52e9cb38a52fb5283cff624aa5d94ddf3142b88 /tools/perf/scripts/python/bin/stackcollapse-report | |
| parent | 0d214d14be503f16238999723acfcbf63f04cc8b (diff) | |
btrfs: zoned: skip fully truncated ordered extents at zone finish
A fully truncated ordered extent (truncated_len == 0) wrote no data, so its
->csum_list is empty and btrfs_finish_ordered_zoned() trips:
assertion failed: !list_empty(&ordered->csum_list), in fs/btrfs/zoned.c:2141
Since commit 66ff4d366e7e a short or cancelled direct IO write finishes the
unsubmitted ordered extent as truncated with uptodate = true instead of
setting BTRFS_ORDERED_IOERR, so it now reaches btrfs_finish_ordered_zoned()
rather than being skipped by the IOERR check in btrfs_finish_ordered_io().
generic/208 hits this on a zoned filesystem.
Return early for these, like the BTRFS_ORDERED_PREALLOC case; there is no
zone append result to record and btrfs_finish_one_ordered() skips them too.
Fixes: 66ff4d366e7e ("btrfs: fix false IO failure after falling back to buffered write")
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-report')
0 files changed, 0 insertions, 0 deletions
