Re: [PATCH 1/2] slab: __GFP_ZERO is incompatible with a constructor

From: Matthew Wilcox
Date: Tue Apr 10 2018 - 13:38:57 EST


On Tue, Apr 10, 2018 at 12:30:23PM -0500, Christopher Lameter wrote:
> On Tue, 10 Apr 2018, Matthew Wilcox wrote:
>
> > If we want to get rid of the concept of constructors, it's doable,
> > but somebody needs to do the work to show what the effects will be.
>
> How do you envision dealing with the SLAB_TYPESAFE_BY_RCU slab caches?
> Those must have a defined state of the objects at all times and a constructor is
> required for that. And their use of RCU is required for numerous lockless
> lookup algorithms in the kernhel.

Not at all times. Only once they've been used. Re-constructing them
once they've been used might break the rcu typesafety, I suppose ...
would need to examine the callers.