3 ms·
Okay, lets say the current crop of CPUs is burned to the tune of 15-28%. What's next? Can this effect be mitigated in the next round of design? Is speculative e
by javajosh 4y ago
Okay, lets say the current crop of CPUs is burned to the tune of 15-28%. What's next? Can this effect be mitigated in the next round of design? Is speculative execution always going to be problematic like this?
Also, what can be done on the software side? Why is Linux so vulnerable, but not Windows? Is the kernel layout in Linux statically define or something?
- staticassertion 4y ago(non expert thoughts ahead!) > What's next? Can this effect be mitigated in the next round of design? Yes. PCID is one example.The PCID, or Process IDentifier, lets the CPU avoid flushing the TLB on every context switch. Similar approaches could be taken to let the CPU know "this is not a situation where you need to be extra careful, you can be extra fast". There are likely other hardware approaches that could help. I doubt we can ever get to "100% of the performance is back" because a side channel is always going to be possible if specific operations have specific effects like timing differences, but we can probably get to 99%. PCID alone drops the performance hit of kpti in half (or so). > Also, what can be done on the software side? memfd_protect is a cool thing that kinda helps in theory. There's probably a lot of stuff processes could do to protect themselves, in theory. > Why is Linux so vulnerable, but not Windows? I can only assume because Microsoft cared more to solve the problem. Windows implements a more complete mitigation than Linux, someone else can provide sources to the discussions that led to Linux's approach.
- tedunangst 4y agoIf Zen 3 is already not vulnerable, don't even have to wait for the next round of designs.