mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-03-03 18:28:01 +01:00
xfs: fix remote xattr valuelblk check
In debugging other problems with generic/753, it turns out that it's
possible for the system go to down in the middle of a remote xattr set
operation such that the leaf block entry is marked incomplete and
valueblk is set to zero. Make this no longer a failure.
Cc: <stable@vger.kernel.org> # v4.15
Fixes: 13791d3b83 ("xfs: scrub extended attribute leaf space")
Signed-off-by: "Darrick J. Wong" <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
@@ -338,7 +338,10 @@ xchk_xattr_entry(
|
||||
rentry = xfs_attr3_leaf_name_remote(leaf, idx);
|
||||
namesize = xfs_attr_leaf_entsize_remote(rentry->namelen);
|
||||
name_end = (char *)rentry + namesize;
|
||||
if (rentry->namelen == 0 || rentry->valueblk == 0)
|
||||
if (rentry->namelen == 0)
|
||||
xchk_da_set_corrupt(ds, level);
|
||||
if (rentry->valueblk == 0 &&
|
||||
!(ent->flags & XFS_ATTR_INCOMPLETE))
|
||||
xchk_da_set_corrupt(ds, level);
|
||||
}
|
||||
if (name_end > buf_end)
|
||||
|
||||
Reference in New Issue
Block a user