Messages in this thread | | | Date | Fri, 16 May 2008 10:01:38 -0700 (PDT) | From | Christoph Lameter <> | Subject | Re: [patch 10/21] buffer heads: Support slab defrag |
| |
On Fri, 16 May 2008, David Chinner wrote:
> On Thu, May 15, 2008 at 10:42:15AM -0700, Christoph Lameter wrote: > > On Mon, 12 May 2008, David Chinner wrote: > > > > > If you are going to clean bufferheads (or pages), please clean entire > > > mappings via ->writepages as it leads to far superior I/O patterns > > > and a far higher aggregate rate of page cleaning..... > > > > That brings up another issue: Lets say I use writepages on a large file > > (couple of gig). How much do you want to write back? > > We're out of memory. I'd suggest write backing as much as you can > without blocking. e.g. treat it like pdflush and say 1024 pages, or > like balance_dirty_pages() and write a 'write_chunk' back from the > mapping (i.e. sync_writeback_pages()).
Why are we out of memory? How do you trigger such a special writeout?
> Any of these are better from an I/O perspective than single page > writeback....
But then filesystem can do tricks like writing out the surrounding areas as needed. The filesystem likely can estimate better how much writeout makes sense.
| |