Re: [patch 10/21] buffer heads: Support slab defrag

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: David Chinner <dgc@...>
Cc: Evgeniy Polyakov <johnpol@...>, Christoph Lameter <clameter@...>, <linux-kernel@...>, <linux-fsdevel@...>, Mel Gorman <mel@...>, <andi@...>, Rik van Riel <riel@...>, Pekka Enberg <penberg@...>, <mpm@...>
Date: Tuesday, May 20, 2008 - 7:28 pm

On Wed, 21 May 2008 09:19:42 +1000 David Chinner <dgc@sgi.com> wrote:


It's more than efficiency.  There are lots and lots of things we cannot
do in direct-reclaim context.

a) Can't lock pages (well we kinda sorta could, but generally code
   will just trylock)

b) Cannot rely on the inode or the address_space being present in
   memory after we have unlocked the page.

c) Cannot run iput().  Or at least, we couldn't five or six years
   ago.  afaik nobody has investigated whether the situation is now
   better or worse.

d) lots of deadlock scenarios - need to test __GFP_FS basically everywhere
   in which you share code with normal writeback paths.

Plus e), f), g) and h).  Direct-reclaim is a hostile environment. 
Things like b) are a real killer - nasty, subtle, rare,
memory-pressure-dependent crashes.

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[patch 10/21] buffer heads: Support slab defrag, Christoph Lameter, (Fri May 9, 11:08 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Sun May 11, 8:24 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Christoph Lameter, (Thu May 15, 1:42 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Thu May 15, 7:10 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Christoph Lameter, (Fri May 16, 1:01 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Mon May 19, 1:45 am)
Re: [patch 10/21] buffer heads: Support slab defrag, Jamie Lokier, (Tue May 20, 6:53 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Christoph Lameter, (Mon May 19, 12:44 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Mon May 19, 8:25 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Evgeniy Polyakov, (Tue May 20, 2:56 am)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Tue May 20, 5:46 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Evgeniy Polyakov, (Tue May 20, 6:25 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Evgeniy Polyakov, (Tue May 20, 7:22 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Christoph Lameter, (Tue May 20, 9:56 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Tue May 20, 7:30 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Evgeniy Polyakov, (Wed May 21, 2:20 am)
Re: [patch 10/21] buffer heads: Support slab defrag, David Chinner, (Tue May 20, 7:19 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Andrew Morton, (Tue May 20, 7:28 pm)
Re: [patch 10/21] buffer heads: Support slab defrag, Evgeniy Polyakov, (Wed May 21, 2:15 am)
Re: [patch 10/21] buffer heads: Support slab defrag, Andrew Morton, (Wed May 21, 2:24 am)
iput() in reclaim context, Hugh Dickins, (Wed May 21, 1:52 pm)
Re: iput() in reclaim context, Andrew Morton, (Wed May 21, 2:12 pm)
Re: iput() in reclaim context, Evgeniy Polyakov, (Wed May 21, 1:58 pm)