Minor update, I found that I made a mistake with the value in STAR. I
loaded 0x18 into the top 16 bits, so the bug is not that SS is 0x20
(which I thought to be wrong but was my own mistake). Why does it set
CS=0x2b from that value & run?
--
sysret sets invalid ss
https://bugs.launchpad.net/bugs/
Public bug reported:
I'm developing an OS. I use only sysret to enter user space. When an
interrupt occurred, it would GPF on iretq'ing from it. On investigating,
the cs on the stack is 0x2b (valid and correct). The ss on the stack is
0x20, which has a rpl of 0 which is incorrect. iretq checks tha