Re: [PATCH 04/37] xfs: implement freezing by emptying the AIL

Mark Tinguely
2012-04-23T15:40:33Z

On 04/23/12 00:58, Dave Chinner wrote:
> From: Christoph Hellwig<hch@infradead.org>
>
> Now that we write back all metadata either synchronously or through
> the AIL we can simply implement metadata freezing in terms of
> emptying the AIL.
>
> The implementation for this is fairly simply and straight-forward:
> A new routine is added that asks the xfsaild to push the AIL to the
> end and waits for it to complete and send a wakeup. The routine will
> then loop if the AIL is not actually empty, and continue to do so
> until the AIL is compeltely empty.
>
> We keep an inode reclaim pass in the freeze process to avoid having
> memory pressure have to reclaim inodes that require dirtying the
> filesystem to be reclaimed after the freeze has completed. This
> means we can also treat unmount in the exact same way as freeze.
>
> As an upside we can now remove the radix tree based inode writeback
> and xfs_unmountfs_writesb.
>
> [ Dave Chinner:
> - Cleaned up commit message.
> - Added inode reclaim passes back into freeze.
> - Cleaned up wakeup mechanism to avoid the use of a new
> sleep counter variable. ]
>
> Signed-off-by: Christoph Hellwig<hch@lst.de>
> Signed-off-by: Dave Chinner<dchinner@redhat.com>
> ---

Looks good.

Reviewed-by: Mark Tinguely <tinguely@sgi.com>