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

From: Paul E. McKenney
Date: Wed Jan 25 2017 - 17:36:04 EST


On Wed, Jan 25, 2017 at 10:26:08PM +0100, Vlastimil Babka wrote:
> On 01/25/2017 09:25 PM, Johannes Weiner 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.
> >>
> >>Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
> >
> >This has come up in the past, and it always proved hard to agree on a
> >better name for it. But I like SLAB_TYPESAFE_BY_RCU the best out of
> >all proposals, and it's much more poignant than the current name.
>
> Heh, until I've seen this thread I had the same wrong assumption
> about the flag, so it suprised me. Good thing I didn't have a chance
> to use it wrongly so far :)
>
> "Type safety" in this context seems quite counter-intuitive for me,
> as I've only heard it to describe programming languages. But that's
> fine when the name sounds so exotic that one has to look up what it
> does. Much safer than when the meaning seems obvious, but in fact
> it's misleading.
>
> Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
>
> >Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>

Thank you both! I have added these, as well as a Not-acked-by
for Eric. ;-)

Thanx, Paul

> >--
> >To unsubscribe, send a message with 'unsubscribe linux-mm' in
> >the body to majordomo@xxxxxxxxxx For more info on Linux MM,
> >see: http://www.linux-mm.org/ .
> >Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>
> >
>