tag name | dirattr-validate-owners_2022-11-09 (74d59e5d4ded7304806b2b603e65500a2eb303e4) |
tag date | 2022-11-09 19:10:18 -0800 |
tagged by | Darrick J. Wong <djwong@kernel.org> |
tagged object | commit ddf23119f6... |
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+H93GTRKtOsFAmNsa5oACgkQ+H93GTRK
tOuCHBAApy87Y5ANxtnO6njPe0MytY+G2KBuPD3dWDnYU46Ttgt6nlPLmn8h6ctL
dJsPil6GIbm3Lmr92Uwz0uE2jk3MXEcCEQxiNVpkonSoNuVty5cg6G/2SCn2SkZc
zMZVZhxDf9KgLuZMr1z0hmrNAd7o4XuX4hJt0BX+w67QFS+Jwly61NeIurNZkxIF
AXTvc9v1Ly9EVqj4Sv5qz03Jv0f7SVNI7O3c6pUyGsXD3qTZuxW4pm9cQIKKKzSA
89fq1e0cam9mcW4u+u3p9QHU0B6AJfCWaAT/Ae5ugYSuDetjc/73WsAZ9jzYYp01
iLEx5XGrjbK15iXhdKPfv4llpT7yIGvxIaUfvpk61SSFa2lC625j8XCrJ89ZeiTC
rfrpAYAEmrTf/rJejzgMmxVqfKQS018l1hcWYm6sLO95aR0ImGvnqf/ct7k0ZKNb
cAh9VKvMEBTgKZ5XR/2lke0yx01DFcdcGg9mEcqP0+srbJCY6OC7az6vil/RXRa0
mIwe6WSHEY3TXM0gFmIZaUM9wfUfvyAZU1kE8glTM17T/VTtRMldVMGHTt4GklTY
t+KOUNv/4fAH+gbqiSz3hT7q3F2qJPs56P9t4ge7OByzdTddevnQgtAzjMy7nPZa
bYPJL7ghe7pnbciuhO7iCqvoh/fa9hPzSPR+ZDfNL1LJooMM3lE=
=RKaP
-----END PGP SIGNATURE-----