[PATCH 0/5] btrfs: fix enospc and transaction aborts during fallocate

fdmanana
2020-09-08T10:28:37Z

When attempting to fallocate on a large file range with many file extent
items, the operation can fail with ENOSPC when it shouldn't and, more
critical, abort the transaction and turn the filesystem to RO mode.

First patch fixes the issue, the remaining just do some cleanups after it.

Filipe Manana (5):
btrfs: fix metadata reservation for fallocate that leads to
transaction aborts
btrfs: remove item_size member of struct btrfs_clone_extent_info
btrfs: rename struct btrfs_clone_extent_info to a more generic name
btrfs: rename btrfs_punch_hole_range() to a more generic name
btrfs: rename btrfs_insert_clone_extent() to a more generic name

fs/btrfs/ctree.h | 28 +++++++++--
fs/btrfs/file.c | 119 ++++++++++++++++++++++++++-------------------
fs/btrfs/inode.c | 67 ++++++++++++++++---------
fs/btrfs/reflink.c | 8 +--
4 files changed, 142 insertions(+), 80 deletions(-)

--
2.26.2