tag name | reflink-speedups_2021-12-15 (9871b626b3ddd7be5ff00540852d8e2be98f805a) |
tag date | 2021-12-15 17:30:40 -0800 |
tagged by | Darrick J. Wong <djwong@kernel.org> |
tagged object | commit 807adbc190... |
xfs: fix reflink inefficiencies
As Dave Chinner has complained about on IRC, there are a couple of
things about reflink that are very inefficient. First of all, we
limited the size of all bunmapi operations to avoid flooding the log
with defer ops in the worst case, but recent changes to the defer ops
code have solved that problem, so get rid of the bunmapi length clamp.
Second, the log reservations for reflink operations are far far larger
than they need to be. Shrink them to exactly what we need to handle
each deferred RUI and CUI log item, and no more. Also reduce logcount
because we don't need 8 rolls per operation. Introduce a transaction
reservation compatibility layer to avoid changing the minimum log size
calculations.
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmG6lsAACgkQ+H93GTRK
tOsV2RAAkOnbaIeZsYSyTFoPmLVtFQRdcL6G/eTMtf2yTL/em0QhR/PoD1F1oGPy
JCTaxzCWV/lACfdRGVDZFgZhJbo+2tD8vpkVs3oqZxtRz2OFVzLj7avXO0/QWSu7
25ZMwtfafKSMUy8esgCZttjM/k+u71j93IcfbP5pKRX6mSFQjE0VaksCBgBkoFHP
JMmHx9MXDdtQ2U2a8neyyEEwRbR5Ycemo7MlyOHBT2SWy1JpN+IBpcGpZJJqMntM
VvcykCEMh42yk6X2eX+WxBu+xhYuZksbK3n27mb65UqwYf8nM0eMetIhv8YPnNj/
eD/HWUaWagsy4vUqyUiHpzzDv2at1n5F2BjZcfyPeo3FFg4C00vG4hhsWXIA2LQ8
Q3C3VllgCqwmF1FfCPXbtuPGGeE+NgyEBsfMANrh4rRIZ7tWBw3yMhCI91lM+JcO
Qh4GPk8ktHX0IYkHVJRnm9M8+6lABLYlRs/AZC+usEFGS6FcElMJEyy6vXFNqXNm
k94l4uRt2GB4k4x2UNVf507NE5/+PwSmSeyyfUpJ2FQA7Iuo79hZmpjFnZEDd7Q6
o+L0uNHFhgXh7EJCHZZR5712BrUcVF1UyZ8Hh8Lbt/56/2n2SyCXbYZVcMjSacZs
YEertxCoUiGDnP9ffpHR8H18p7fPaRSXNb3WvULK5VxrtBchJFU=
=3DZw
-----END PGP SIGNATURE-----