diff options
author | Sidong Yang <sidong.yang@furiosa.ai> | 2025-03-19 14:24:01 +0300 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2025-04-01 02:02:26 +0300 |
commit | 8e587ab43cb92a9e57f99ea8d6c069ee65863707 (patch) | |
tree | 1e82ee19972a0678b1982a6e0dbedb97bd81522b /tools/perf/scripts/python/check-perf-trace.py | |
parent | 35fec1089ebb5617f85884d3fa6a699ce6337a75 (diff) | |
download | linux-8e587ab43cb92a9e57f99ea8d6c069ee65863707.tar.xz |
btrfs: ioctl: don't free iov when btrfs_encoded_read() returns -EAGAIN
Fix a bug in encoded read that mistakenly frees the iov in case
btrfs_encoded_read() returns -EAGAIN assuming the structure will be
reused. This can happen when when receiving requests concurrently, the
io_uring subsystem does not reset the data, and the last free will
happen in btrfs_uring_read_finished().
Handle the -EAGAIN error and skip freeing iov.
CC: stable@vger.kernel.org # 6.13+
Signed-off-by: Sidong Yang <sidong.yang@furiosa.ai>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'tools/perf/scripts/python/check-perf-trace.py')
0 files changed, 0 insertions, 0 deletions