On Sat, Mar 24, 2018 at 9:43 AM, Ingo Molnar <mingo@xxxxxxxxxx> wrote: > > * Andrey Konovalov <andreyknvl@xxxxxxxxxx> wrote: > >> This commit splits the current CONFIG_KASAN config option into two: >> 1. CONFIG_KASAN_CLASSIC, that enables the classic KASAN version (the one >> that exists now); >> 2. CONFIG_KASAN_TAGS, that enables KHWASAN. > > Sorry, but this is pretty obscure naming scheme that doesn't explain the primary > difference between these KASAN models to users: that the first one is a pure > software implementation and the other is hardware-assisted. > > Reminds me of the transparency of galactic buerocracy in "The Hitchhiker's Guide > to the Galaxy": > > “But look, you found the notice, didn’t you?” > “Yes,” said Arthur, “yes I did. It was on display in the bottom of a locked filing > cabinet stuck in a disused lavatory with a sign on the door saying ‘Beware of the > Leopard.” > > I'd suggest something more expressive, such as: > > CONFIG_KASAN > CONFIG_KASAN_GENERIC > CONFIG_KASAN_HW_ASSIST > > or so? > > The 'generic' variant will basically run on any CPU. The 'hardware assisted' one > needs support from the CPU. > > The following ones might also work: > > CONFIG_KASAN_HWASSIST > CONFIG_KASAN_HW_TAGS > CONFIG_KASAN_HWTAGS > > ... or simply CONFIG_KASAN_SW/CONFIG_KASAN_HW. > > If other types of KASAN hardware acceleration are implemented in the future then > the CONFIG_KASAN_HW namespace can be extended: > > CONFIG_KASAN_HW_TAGS > CONFIG_KASAN_HW_KEYS > etc. How about these two: CONFIG_KASAN_GENERIC CONFIG_KASAN_HW ? Shorter config name looks better to me and I think it makes sense to name the new config just HW, as there's only one HW implementation right now. When (and if) there are more, we can expand the config name as you suggested (CONFIG_KASAN_HW_TAGS, CONFIG_KASAN_HW_KEYS, etc). > >> Both CONFIG_KASAN_CLASSIC and CONFIG_KASAN_CLASSIC support both >> CONFIG_KASAN_INLINE and CONFIG_KASAN_OUTLINE instrumentation modes. > > It would be very surprising if that wasn't so! > > Or did you mean 'Both CONFIG_KASAN_CLASSIC and CONFIG_KASAN_TAGS'! ;-) > > Thanks, > > Ingo