[Top] [All Lists]

Re: Stalls during writeback for mmaped I/O on XFS in 3.0

To: Shawn Bohrer <sbohrer@xxxxxxxxxxxxxxx>
Subject: Re: Stalls during writeback for mmaped I/O on XFS in 3.0
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue, 20 Sep 2011 12:30:34 -0400
Cc: "Darrick J. Wong" <djwong@xxxxxxxxxx>, Christoph Hellwig <hch@xxxxxxxxxxxxx>, linux-fsdevel@xxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, xfs@xxxxxxxxxxx
In-reply-to: <20110916163232.GA2109@xxxxxxxxxxxxxxxxxxxxxxxxx>
References: <20110915144755.GB2235@xxxxxxxxxxxxxxxxxxxxxxxxx> <20110915145556.GA19902@xxxxxxxxxxxxx> <20110915154748.GC2235@xxxxxxxxxxxxxxxxxxxxxxxxx> <20110916002557.GN11984@xxxxxxxxxxxxxxxxxxxxxx> <20110916163232.GA2109@xxxxxxxxxxxxxxxxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Fri, Sep 16, 2011 at 11:32:32AM -0500, Shawn Bohrer wrote:
> So for the most part it sounds like this change is needed for DIF/DIX.
> Could we only enable the wait_on_page_writeback() if
> CONFIG_BLK_DEV_INTEGRITY is set?  Does it make sense to tie these
> together?

It will also allow for huge efficiency gains on software raid.  There
have been some Lustre patches for that.

> The other thread in this case is the [flush-8:0] daemon writing back
> the pages.  So in our case you could see the spikes every time it wakes
> up to write back dirty pages.  While we can control this to some
> extent with vm.dirty_writeback_centisecs and vm.dirty_expire_centisecs
> it essentially impossible to ensure the writeback doesn't coincide
> with us writing to the page again.

Can you explain how your use case looks in more details?  Right now
for example a mlock removes the page from the lru list and thus stops
VM writeback.  If such an interface would be useful for you we could
offer an fadvice call that stops writeback entirely, and requires you
to force it when you want it.

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