[Top] [All Lists]

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

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH 04/37] xfs: implement freezing by emptying the AIL
From: Mark Tinguely <tinguely@xxxxxxx>
Date: Mon, 23 Apr 2012 10:40:33 -0500
Cc: xfs@xxxxxxxxxxx
In-reply-to: <1335160747-17254-5-git-send-email-david@xxxxxxxxxxxxx>
References: <1335160747-17254-1-git-send-email-david@xxxxxxxxxxxxx> <1335160747-17254-5-git-send-email-david@xxxxxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:9.0) Gecko/20120122 Thunderbird/9.0
On 04/23/12 00:58, Dave Chinner wrote:
From: Christoph Hellwig<hch@xxxxxxxxxxxxx>

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@xxxxxx>
Signed-off-by: Dave Chinner<dchinner@xxxxxxxxxx>

Looks good.

Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>

<Prev in Thread] Current Thread [Next in Thread>