summaryrefslogtreecommitdiff
tag namedefrag-freespace_2021-12-15 (7ea71d7f5e57cd8358367e7fea2ace9e99367190)
tag date2021-12-15 17:31:16 -0800
tagged byDarrick J. Wong <djwong@kernel.org>
tagged objectcommit bb3fa72be1...
xfs: defragment free space
These patches contain experimental code to enable userspace to defragment the free space in a filesystem. Two purposes are imagined for this functionality: clearing space at the end of a filesystem before shrinking it, and clearing free space in anticipation of making a large allocation. The first patch adds a new fallocate mode that allows userspace to allocate free space from the filesystem into a file. The goal here is to allow the filesystem shrink process to prevent allocation from a certain part of the filesystem while a free space defragmenter evacuates all the files from the doomed part of the filesystem. The second patch amends the online repair system to allow the sysadmin to forcibly rebuild metadata structures, even if they're not corrupt. Without adding an ioctl to move metadata btree blocks, this is the only way to dislodge metadata. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmG6luQACgkQ+H93GTRK tOuSJRAAitpkRIa0ihdLp8gKN7o1iyy9pW8v3ZPmO9lF++smbQi1Wz9JCsZZVrUh s4DZ912JXq56jIqp064J3AjnqOZctQd1vOvyNbYTnxKJgG3UpRBfGI4q1P+cCrFV o7yJ6S1sQkgEFi6sosKgmGazHzYtaHRofFYRepuvlRdIj6VQkllAoQq9GKOBCUAk yjy3pK1PcOsT5XPJq8o3sJOyTi6beOCTM1Uloia/iEIMk3l/ZmTa3/OMJeEpn5+T vo2ssRWSZG1MrF04eIH0Y9fNb8+sTyXzGupsMHwDnK2XJi5d0PrscwSPnCeQVamH dB0o8ikbggoyfe7iXnrMKjPeGTpVx1bk65uDDCQRJykpfRcKBaqNLuoyE0klY9XT NRMEtxYV2avOG6FZU9LO5Fxxb0uKX+9+dg1HWWUpnTIZXqo6GK4Yfyxbv35DywV0 /se9Ub28n5oULoY24o9D1Hut37jZ7eB6UjcXWTRV8J0PLTqNKxlWJ9OJjFEbU00i 0YDfQDXHiW8xjFrt8hXPLQVt8yuhpcpCkK3iFtA0z9i4zh7XPNr4dUWegdrx90+e SbJp0MZy9Bw+koQg3ejU2+2fc7daJsoQti4n8TGrnc+Fwxxq8pMuB707aBvfKFUX 5zyuX5nVemz6s6ZguW6C2RVNg8f9f+UyerzAxC53vRLSI19N2XI= =eUYs -----END PGP SIGNATURE-----