[GIT PULL] Btrfs fixes for v6.0-rc3

From: David Sterba
Date: Sun Aug 28 2022 - 09:02:52 EST


Hi,

a few more fixes and regressions. Please pull, thanks.

- fixes:
- check that subvolume is writable when changing xattrs from security
namespace
- fix memory leak in device lookup helper
- update generation of hole file extent item when merging holes
- fix space cache corruption and potential double allocations; this is
a rare bug but can be serious once it happens, stable backports and
analysis tool will be provided
- fix error handling when deleting root references
- fix crash due to assert when attempting to cancel suspended device
replace, add message what to do if mount fails due to missing
replace item

- regressions:
- don't merge pages into bio if their page offset is not contiguous
- don't allow large NOWAIT direct reads, this could lead to short
reads eg. in io_uring

----------------------------------------------------------------
The following changes since commit 899b7f69f244e539ea5df1b4d756046337de44a5:

btrfs: tree-checker: check for overlapping extent items (2022-08-17 16:20:25 +0200)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git for-6.0-rc3-tag

for you to fetch changes up to f2c3bec215694fb8bc0ef5010f2a758d1906fc2d:

btrfs: add info when mount fails due to stale replace target (2022-08-23 22:15:21 +0200)

----------------------------------------------------------------
Anand Jain (2):
btrfs: replace: drop assert for suspended replace
btrfs: add info when mount fails due to stale replace target

Filipe Manana (2):
btrfs: update generation of hole file extent item when merging holes
btrfs: fix silent failure when deleting root reference

Goldwyn Rodrigues (1):
btrfs: check if root is readonly while setting security xattr

Josef Bacik (1):
btrfs: don't allow large NOWAIT direct reads

Omar Sandoval (1):
btrfs: fix space cache corruption and potential double allocations

Qu Wenruo (1):
btrfs: don't merge pages into bio if their page offset is not contiguous

Zixuan Fu (1):
btrfs: fix possible memory leak in btrfs_get_dev_args_from_path()

fs/btrfs/block-group.c | 47 +++++++++++++++--------------------------------
fs/btrfs/block-group.h | 4 +---
fs/btrfs/ctree.h | 1 -
fs/btrfs/dev-replace.c | 5 ++---
fs/btrfs/extent-tree.c | 30 ++++++------------------------
fs/btrfs/extent_io.c | 33 +++++++++++++++++++++++++++++----
fs/btrfs/file.c | 2 ++
fs/btrfs/inode.c | 14 ++++++++++++++
fs/btrfs/root-tree.c | 5 +++--
fs/btrfs/volumes.c | 5 ++++-
fs/btrfs/xattr.c | 3 +++
11 files changed, 79 insertions(+), 70 deletions(-)