|
Message-ID: <20161111201704.GQ3117@twins.programming.kicks-ass.net> Date: Fri, 11 Nov 2016 21:17:04 +0100 From: Peter Zijlstra <peterz@...radead.org> To: Kees Cook <keescook@...omium.org> Cc: Will Deacon <will.deacon@....com>, Greg KH <gregkh@...uxfoundation.org>, David Windsor <dave@...gbits.org>, "kernel-hardening@...ts.openwall.com" <kernel-hardening@...ts.openwall.com>, Elena Reshetova <elena.reshetova@...el.com>, Arnd Bergmann <arnd@...db.de>, Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...hat.com>, "H. Peter Anvin" <h.peter.anvin@...el.com> 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} {sub,add,inc,dec}_and_test {cmpxchg,xchg} add_unless,inc_not_zero,{inc,dec}_unless_negative,dec_if_positive 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.