3 ms·
Linus' opinion: https://www.realworldtech.com/forum/?threadid=200812&curpostid=200822 https://www.realworldtech.com/forum/?threadid=200812&curpost...
by young_unixer 5y ago
Linus' opinion: https://www.realworldtech.com/forum/?threadid=200812&curpostid=200822 https://www.realworldtech.com/forum/?threadid=200812&curpost...
- bryanlarsen 5y agotldr: AMD is "fix the spec bugs". Intel is "replace with better approach". Linus: do both, please!
- bogomipz 5y agoThanks for posting this link. I was curious about a, b and d: >"(a) IDT itself is a horrible nasty format and you shouldn't have to parse memory in odd ways to handle exceptions. It was fundamentally bad from the 80286 beginnings, it got a tiny bit harder to parse for 32-bit, and it arguably got much worse in x86-64." What is it about IDT that requires parsing memory in odd ways? What is odd about it? >"(b) %rsp not being restored properly by return-to-user mode." Does anyone know why this is? Is this a historical accident or something else? >"(d) several bad exception nesting problems (NMI, machine checks and STI-shadow handling at the very least)" Is this one these two exceptions are nested together or is this an issue when either one of these is present in the interrupt chain? Is there any good documentation on this?
- Someone 5y agoReading https://wiki.osdev.org/Interrupt_Descriptor_Table https://wiki.osdev.org/Interrupt_Descriptor_Table, the table contains a 32-bit offset that’s split into two halves for IA-32 or a 64-bit one split into 3 parts for AMD64. There also seems to be some cruft from having segments and still having (¿some?) 16-bit code support, but I think that’s par for the game.