From: Arnd Bergmann > Sent: 09 February 2018 12:58 ... > However, aside from this driver, I wonder if we should be worried about > Spectre type 1 attacks on similar code, when gcc-8 turns a switch/case > statement into an array lookup behind our back, e.g. in an ioctl handler. > Has anybody got this on their radar?
The canonical code for a switch statement is to jump indirect on an array of code pointers. ioctl handlers probably use a series of compares because the values are sparse. Also remember that gcc-8 will convert dense switch statements that just load a value into a data array lookup. I guess both those jump tables are potential attack vectors. Not quite sure how they might be used to leak info though. David