Skip to contentSkip to conversation

xfs: shrinking support

PATCH In review Jeff Liu 1 participant 1 message Nov 16, 2012

lore
Share & tools
lore

Jeff Liu

author
#0 lore raw

cover xfs: shrinking support

Hello,

These days I have tried to implement shrinkfs feature according to Dave's previous design which can be found at:
http://www.xfs.org/index.php/Shrinking_Support

Here is a very initial patch set, it only support shrinking up to the latest empty AG since I have not add the data moving and extents swap functions to the user tools.

I know the current patches definitely looks stupid and there have many places need to fix. I'd like to post it eaiser to seek any directions so that I can continue to improve it, especially on inode swap semantics, AG metadata removing as well as the command interface.

- xfs_reno(8)
The following two links are referred to a couple of untested patches of inode swapping for xfs_reno(8).
http://marc.info/?l=linux-xfs&m=119552278931942&w=2
http://marc.info/?l=linux-xfs&m=119582841808985&w=2

The user patch does extents swapping after swapping inodes, I was confused because xfs_reno only do modify the inodes from 64bits to 32bits, inodes swap should be sufficient to perform it since it don't need to move the data extents(i.e. perform extents/blocks allocation for target files like xfs_fsr/xfs_shrinkfs).

- AG metadata clean up
For now, I only wipe the pre-allocated sectors/blocks out of an empty AG, I guess I missed something for btree info updates.

- xfs_shrinkfs CLI
I observed Dave has posted a patch to fetch the FS freespace via FIEMAP, but for now, I have to get the FS freespace via shell script(wrapper of xfs_db).
And also, I didn't add the data moving functions because there still has issues on inode swap routine, it would failed to swap directories :(, so it can only be used to reflect my current stupid ideas.

Last but not the least, I have not add the placeholder for log area shrink as well as compat_ioctl32 functions since this version can only be considered at input comments stage.

Any suggestions are appreciated!

Thanks,
-Jeff

_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs