3 ms·
unmapped pages cannot be speculatively executed "into"? (due to TLB flush? which happens during unmapping?)
by pas 4y ago
unmapped pages cannot be speculatively executed "into"? (due to TLB flush? which happens during unmapping?)
- simcop2387 4y agoMy understanding is that this is because the tlb update can't be speculated through. That means that once speculative execution hits that barrier it will stop and can't then look at data that would be mapped in if speculation kept going. Basically there's a hard fence there that it won't/can't go past so if you do hit a page fault in kernel space on one of the unmapped pages you know it will be from an active and not speculative thread running.