tag name | dirattr-validate-owners_2022-10-14 (7f4b491bc5dc755ee5a4c090935320e9fb5958f6) |
tag date | 2022-10-14 14:18:59 -0700 |
tagged by | Darrick J. Wong <djwong@kernel.org> |
tagged object | commit 189dbc73b6... |
xfs: set and validate dir/attr block owners
There are a couple of significant changes that need to be made to the
directory and xattr code before we can support online repairs of those
data structures.
The first change is because online repair is designed to use libxfs to
create a replacement dir/xattr structure in a temporary file, and use
atomic extent swapping to commit the corrected structure. To avoid the
performance hit of walking every block of the new structure to rewrite
the owner number before the swap, we instead change libxfs to allow
callers of the dir and xattr code the ability to set an explicit owner
number to be written into the header fields of any new blocks that are
created. For regular operation this will be the directory inode number.
The second change is to update the dir/xattr code to actually *check*
the owner number in each block that is read off the disk, since we don't
currently do that.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmNJ0kMACgkQ+H93GTRK
tOuQMg//ZgAbILmi0Uw+gqGNHHhEgdQO+2CrN12rl3osOT0maAsaPNidY3CQHB8I
/FJw0PcYFIht2E0G0hTmHi7FOERjHiBNJ3ytXAs9+eDNWWhOf0BxC85B9qPKqd/S
kBj8b+i4D/TD+3G2MoaYUYTXEM+iR8sy6UqRJS9WFXc3cIgCkT+Qp6SYl0/ACDqW
ZHXV7VDqBinLEohG/veCjzik5Vb3v5cgo9ABOXPTsfIaZIMMW0gisZi04i85/UYS
uDTO9pzfvyOXm0KNBTmwU44fGTnoV7wFfWE1BpwCcPCBiaHEmPCUiARnNIv++bPk
1wEtFG8LZIm5Y6XuxtK90nOwuWTjiseAXsE/eMU/teb4PjAOPRSW9V7frSaSVEjt
z+gseJFpXwOCgD2Z9K1ioPILA6vzkT97pFCPDLYHPtrSBhs5Era1IdQIYoRXLPaC
wwoj3Lk9X40RhkDKg6AOcvTlzywtPDu/g6OmzZreoLR1L4Q4VqB3dVkY1kJtrrNS
RbGle6QmVpHx50Qy+GCD8B76zyyawoZQEc/uKvz+/bxub03rumsHK+KMaz8iSbud
4EzpcmQA9K8NonWSfuz1oDm/j6BUtx4nW+b49XtrEQzJhcBXuOIpmCI2ImfkE0s2
8fedtjBgRn8fAX1me6nnknyz0Y1huG6LyFIMDK0rXWwbnmLNkWY=
=e/iv
-----END PGP SIGNATURE-----