[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110502080906.GS2297@linux.vnet.ibm.com>
Date: Mon, 2 May 2011 01:09:06 -0700
From: "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To: Dave Chinner <david@...morbit.com>
Cc: linux-kernel@...r.kernel.org, mingo@...e.hu, laijs@...fujitsu.com,
dipankar@...ibm.com, akpm@...ux-foundation.org,
mathieu.desnoyers@...ymtl.ca, josh@...htriplett.org,
niv@...ibm.com, tglx@...utronix.de, peterz@...radead.org,
rostedt@...dmis.org, Valdis.Kletnieks@...edu, dhowells@...hat.com,
eric.dumazet@...il.com, darren@...art.com, patches@...ro.org
Subject: Re: [PATCH tip/core/rcu 0/6] Preview of RCU patches for 2.6.40
On Mon, May 02, 2011 at 09:49:11AM +1000, Dave Chinner wrote:
> On Sun, May 01, 2011 at 06:21:42AM -0700, Paul E. McKenney wrote:
> > Hello!
> >
> > This patchset introduces RCU_TREE priority boosting, a new "fire and
> > forget" kfree_rcu() API, numerous uses of kfree_rcu(), plus a number
> > of other fixes and improvements. The patches are as follows:
>
> .....
>
> > 34-70. Use kfree_rcu() throughout the kernel. This set of patches has
> > Acked-by's, so will go up -tip.
> >
> > 71-86. Ditto, but lacking Acked-by's.
>
> Any reason why dentry and inode freeing was not converted in this
> series?
>From what I can see, they use kmem_cache_free() rather than kfree(),
so we cannot use kfree_rcu() for them. But there are many tens of RCU
callback functions that just do kmem_cache_free(), so maybe we need
a kmem_cache_free_rcu().
Lai, any thoughts on this? Perhaps a global array of pointers to all the
kmem_caches, so that the low-order bit can say kmem_cache_free() rather
than kfree()? Then the offset can be encoded in the kmem_cache structure,
allowing the ->func field of rcu_head to encode only the index of the
global array of pointers to kmem_cache structures? Or would something
else work better?
Thanx, Paul
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists