public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeff Liu <jeff.liu@oracle.com>
To: xfs@oss.sgi.com
Subject: [PATCH 00/15] xfs: shrinking support
Date: Fri, 16 Nov 2012 14:44:39 +0800	[thread overview]
Message-ID: <50A5E0D7.6030500@oracle.com> (raw)

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
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

                 reply	other threads:[~2012-11-16  6:42 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50A5E0D7.6030500@oracle.com \
    --to=jeff.liu@oracle.com \
    --cc=xfs@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox