Re: [PATCH RFC] mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU

From: Paul E. McKenney
Date: Wed Jan 18 2017 - 19:16:20 EST


On Wed, Jan 18, 2017 at 03:12:01AM -0800, willy@xxxxxxxxxxxxx wrote:
> On Wed, Jan 18, 2017 at 03:07:32AM -0800, Paul E. McKenney wrote:
> > A group of Linux kernel hackers reported chasing a bug that resulted
> > from their assumption that SLAB_DESTROY_BY_RCU provided an existence
> > guarantee, that is, that no block from such a slab would be reallocated
> > during an RCU read-side critical section. Of course, that is not the
> > case. Instead, SLAB_DESTROY_BY_RCU only prevents freeing of an entire
> > slab of blocks.
> >
> > However, there is a phrase for this, namely "type safety". This commit
> > therefore renames SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU in order
> > to avoid future instances of this sort of confusion.
>
> This is probably the ultimate in bikeshedding, but RCU is not the
> thing which is providing the typesafety. Slab is providing the
> typesafety in order to help RCU. So would a better name not be
> 'SLAB_TYPESAFETY_FOR_RCU', or more succinctly 'SLAB_RCU_TYPESAFE'?

Actually, slab is using RCU to provide type safety to those slab users
who request it.

Thanx, Paul