mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-03-16 04:04:06 +00:00
xfs: disallow LARP on old fses
Before enabling logged xattrs, make sure the filesystem is new enough that it actually supports log incompat features. This has been lightly tested with fstests. Enjoy! Signed-off-by: Darrick J. Wong <djwong@kernel.org> -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQQ2qTKExjcn+O1o2YRKO3ySh0YRpgUCZQChOQAKCRBKO3ySh0YR pqc1AQD8hXUpatOY50TdRDI6qpKBWOEti7r+sXyq9bWM4QZFyAD/Zjx3aZ+R2u2g lsb1xLjekrh2DzToOFnvs4gd/nZd7Qw= =BxHQ -----END PGP SIGNATURE----- Merge tag 'fix-larp-requirements-6.6_2023-09-12' of https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux into xfs-6.6-fixesA xfs: disallow LARP on old fses Before enabling logged xattrs, make sure the filesystem is new enough that it actually supports log incompat features. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Chandan Babu R <chandanbabu@kernel.org> * tag 'fix-larp-requirements-6.6_2023-09-12' of https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux: xfs: require a relatively recent V5 filesystem for LARP mode
This commit is contained in:
commit
6ebb6500e5
1 changed files with 11 additions and 0 deletions
|
@ -46,6 +46,17 @@ xfs_attr_grab_log_assist(
|
|||
if (xfs_sb_version_haslogxattrs(&mp->m_sb))
|
||||
return 0;
|
||||
|
||||
/*
|
||||
* Check if the filesystem featureset is new enough to set this log
|
||||
* incompat feature bit. Strictly speaking, the minimum requirement is
|
||||
* a V5 filesystem for the superblock field, but we'll require rmap
|
||||
* or reflink to avoid having to deal with really old kernels.
|
||||
*/
|
||||
if (!xfs_has_reflink(mp) && !xfs_has_rmapbt(mp)) {
|
||||
error = -EOPNOTSUPP;
|
||||
goto drop_incompat;
|
||||
}
|
||||
|
||||
/* Enable log-assisted xattrs. */
|
||||
error = xfs_add_incompat_log_feature(mp,
|
||||
XFS_SB_FEAT_INCOMPAT_LOG_XATTRS);
|
||||
|
|
Loading…
Add table
Reference in a new issue