Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 11 Nov 2016 21:17:04 +0100
From: Peter Zijlstra <>
To: Kees Cook <>
Cc: Will Deacon <>, Greg KH <>,
	David Windsor <>,
	"" <>,
	Elena Reshetova <>,
	Arnd Bergmann <>, Thomas Gleixner <>,
	Ingo Molnar <>,
	"H. Peter Anvin" <>
Subject: Re: Re: [RFC v4 PATCH 00/13] HARDENED_ATOMIC

On Fri, Nov 11, 2016 at 10:04:42AM -0800, Kees Cook wrote:

> I'm totally open about how to get there, but things can't just be opt-in.

There really is no alternative.

refcount_t; should only have: inc, inc_not_zero, dec_and_test

stats_t; should only have: add,sub

atomic_t; has:

	{add,inc,sub,dec} + {and,or,xor,notand}

	{add,inc,sub,dec}_return * {,relaxed,release,acquire}

	(fetch_{add,inc,sub,dec} + {and,or,xor,notand}) * {,relaxed,release,acquire}




That is so much more than either refcount_t or stats_t should have, and
the whole wrap/nowrap thing only matters to part of the ops.

Like said, atomic_cmpxchg_wrap() is utter crap, that's a function name
that doesn't make sense, and you guys should have realized that the
moment you typed it.

Its fantasy to think you can 'implement' atomic_t with refcount_t or
anything else. You're chasing unicorns.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.