xfs: shrinking support
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest15 patches 5 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/15 | xfs: Add a new transaction for changing ag statefs/ fs/ fs/ | +18 | 4 replies | |
| 2/15 | xfs: Introduce new structure members ag_state/agf_statefs/ | +10 | 0 replies | |
| 3/15 | xfs: Introduce a new ioctl(2) to set AG statefs/ fs/ fs/ +3 more | +104 | 1 reply | |
| 4/15 | xfs: Introduce a new ioctl(2) to get AG statefs/ fs/ fs/ +1 more | +75 | 0 replies | |
| 5/15 | xfs: Teach inode/space allocator aware of XFS_AG_STATE_ALLOC_DENYfs/ fs/ fs/ | +29 | 0 replies | |
| 6/15 | xfs: Introduce a new transaction type for inode swappingfs/ | +4 | 0 replies | |
| 7/15 | xfs: Introduce a new ioctl(2) for swapping inodesfs/ fs/ fs/ +1 more | +290 | 0 replies | |
| 8/15 | xfs: Add tracing support for inode swapfs/ fs/ | +43 | 0 replies | |
| 9/15 | xfs: Introduce a new mutex lock for shrinkfsfs/ fs/ | +2 | 0 replies | |
| 10/15 | xfs: Introduce a new transaction for shrinking fs data sectionfs/ fs/ fs/ +1 more | +24 | 0 replies | |
| 11/15 | xfs: Introduce a helper to check if an AG is empty or notfs/ | +92 | 0 replies | |
| 12/15 | xfs: Introduce a helper to remove an emptyfs/ | +149 | 0 replies | |
| 13/15 | xfs: Introduce a helper to truncate an AGfs/ | +94 | 0 replies | |
| 14/15 | xfs: Add shrink data ioctl(2)fs/ fs/ fs/ +1 more | +234 | 0 replies | |
| 15/15 | xfs: Make xfs_trans_mod_sb() aware of negative deltasfs/ | +9 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 00/15] 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