summaryrefslogtreecommitdiff
tag namedefrag-freespace_2021-09-17 (cb98c38c6bc1b47476f41aaa1fceb14ef8ad9d22)
tag date2021-09-17 18:56:33 -0700
tagged byDarrick J. Wong <djwong@kernel.org>
tagged objectcommit 309c2b4fe6...
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+H93GTRKtOsFAmFFR1EACgkQ+H93GTRK tOtjAg//QeiBJUTOG73XLvMHIYwS7eTCK5VSQfObdxu5l3yBF32dYv6peNIte6Jd dsXm00cGLgHcIF8uLDgZiMMqtHjoDrKILqYiICP2lmguLnyvA9OCUc0WI50Y8uea VQab7fMt1ENCJSk9YkmJvaOgDpTDQznFzU9MLmaeomSPxNhLUshoN8+/yBIGzW1a eEuHpS0XtQqsavvXo03XoxAxYocP651xG5vavpfMPICP77JBY2Arudhssig85Ior +DA3jTk4+Po0d6HzSy47Ksh5nOqVVJMD1vLdJi3r5kvq/G2LlzgBY0GkQuVxU7wz BogU9y2GxzWHrr72/xRy2GcxGT9upKcBwRPIYlGWDwPk1CUMJifQK+EThW5IXtxY iecVvVN6NKwnb4GjjgBOw7UYwKd8zQXR21xgBR8/C12x0Iu6n/y6fklAO5N9uQS4 aY8DmmOFGcsjDT6JuM1AbMCO90Agr/sb6EbfKCrYO1EObuDfxrlqCaSvq1HqdBtX BAwzGGdTyC/9LF8uMcsC3zKPUOgHGRj+8wcRACmgXtBv+ecMLYpcTWM6TWwzbmnL zx8b8jnS7Pcd7j782kEozVlsme+D5hCJhTz7t80DZN0FloLeiLOycJkPPU3P9h3x vOKFPOELpAKDEZOZA1oT8o62qBYoqKqtB8mxkuov7lkIxFdSBbo= =62tX -----END PGP SIGNATURE-----