diff options
author | Dan Williams <[email protected]> | 2018-02-16 13:20:42 -0800 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2018-02-17 08:40:59 +0100 |
commit | 1d91c1d2c80cb70e2e553845e278b87a960c04da (patch) | |
tree | f69d797b188ba1e478d7de6e5a41de96b897f76d /arch/x86/kernel/cpu/microcode/intel.c | |
parent | d4667ca142610961c89ae7c41a823b3358fcdd0e (diff) |
nospec: Kill array_index_nospec_mask_check()
There are multiple problems with the dynamic sanity checking in
array_index_nospec_mask_check():
* It causes unnecessary overhead in the 32-bit case since integer sized
@index values will no longer cause the check to be compiled away like
in the 64-bit case.
* In the 32-bit case it may trigger with user controllable input when
the expectation is that should only trigger during development of new
kernel enabling.
* The macro reuses the input parameter in multiple locations which is
broken if someone passes an expression like 'index++' to
array_index_nospec().
Reported-by: Linus Torvalds <[email protected]>
Signed-off-by: Dan Williams <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Arjan van de Ven <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: David Woodhouse <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: Josh Poimboeuf <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Will Deacon <[email protected]>
Cc: [email protected]
Link: http://lkml.kernel.org/r/151881604278.17395.6605847763178076520.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'arch/x86/kernel/cpu/microcode/intel.c')
0 files changed, 0 insertions, 0 deletions