Shrinking Support
From XFS.org
(Difference between revisions)
(New page: Currently XFS Filesystems can't be shrunk. To suppor shrinking XFS filesystems a few thinks needs to be implemented, based on a list by Dave Chinner [http://marc.info/?l=linux-xfs&m=11913...) |
(start collectiong the bits and pieces) |
||
Line 1: | Line 1: | ||
Currently XFS Filesystems can't be shrunk. | Currently XFS Filesystems can't be shrunk. | ||
− | To suppor shrinking XFS filesystems a few thinks needs to be implemented, based on a list by Dave Chinner [http://marc.info/?l=linux-xfs&m= | + | To suppor shrinking XFS filesystems a few thinks needs to be implemented, based on a list by Dave Chinner [http://marc.info/?l=linux-xfs&m=118091640624488&w=2]: |
* An ioctl or similar interface to prevent new allocations from a given allocation group. | * An ioctl or similar interface to prevent new allocations from a given allocation group. | ||
Line 19: | Line 19: | ||
get in the way. To fix that, we'll need to implement transactions | get in the way. To fix that, we'll need to implement transactions | ||
to move the log... | to move the log... | ||
+ | |||
+ | |||
+ | == Available pieces == | ||
+ | |||
+ | * A script from Ruben Porras to check if enough free space is available to support shrinking [[http://marc.info/?l=linux-xfs&m=118581682117599&w=2]] | ||
+ | |||
+ | * A patch from Dave Chinner to allow / disallow allocation from an allocation group [http://marc.info/?l=linux-xfs&m=118181261313174&w=2] |
Revision as of 18:15, 21 December 2008
Currently XFS Filesystems can't be shrunk.
To suppor shrinking XFS filesystems a few thinks needs to be implemented, based on a list by Dave Chinner [1]:
- An ioctl or similar interface to prevent new allocations from a given allocation group.
- A variant of the xfs_reno tool to support moving inodes out of filesystem areas that go away.
- A variant of the xfs_fsr tool to support moving data out of the filesystem areas that go away.
- An ioctl or similar interface to prevent new allocations from a given allocation group
- Some way to move out orphan metadata out of the AGs truncated off
- A transaction to shrink the filesystem.
At that point, we'll got a "working" shrink that will allow shrinking to only 50% of the original size because the log will get in the way. To fix that, we'll need to implement transactions to move the log...
Available pieces
- A script from Ruben Porras to check if enough free space is available to support shrinking [[2]]
- A patch from Dave Chinner to allow / disallow allocation from an allocation group [3]