Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
If a spill block's dbuf hasn't yet been written when a the spill block is removed, the unwritten version will still be written. This patch undirties the dbuf in this case to prevent it to be written. The most common case in which this could happen is when xattr=sa is being used and a long xattr is immediately replaced by a short xattr as in: setfattr -n user.test -v very_very_very..._long_value <file> setfattr -n user.test -v short_value <file> The first value must be sufficiently long that a spill block is generated and the second value must be short enough to not require a spill block. In practice, this would typically happen due to internal xattr operations as a result of setting acltype=posixacl.
- Loading branch information