On 12/17/18, Andi Kleen <ak@xxxxxxxxxxxxxxx> wrote: > ... > From the blog: > >>>> > Note, way back in the early days when I was first compiling the kernel for > multi-core CPUs, SMT (hyperthreading), which simulates more than one core > for each actual core, was causing file corruption. So, disabled it, and > never trusted it after that. > << > > Since nearly everyone else has the option enabled we > are quite confident there is no data corruption caused by it. > So there shouldn't be any reason to turn it off. > I am an outsider, looking in, have only followed the RETPOLINE etc. stuff fairly superficially. Would this statement be correct or incorrect?: With CONFIG_SCHED_SMT disabled, CONFIG_RETPOLINE is not needed. With CONFIG_SCHED_SMT enabled, then CONFIG_RETPOLINE is required for security reasons. Enabling CONFIG_SCHED_SMT speeds up some operations, enabling CONFIG_RETPOLINE slows it down again. End result, not much speed gain, far more complicated kernel. Regards, Barry Kauler