3 ms·
SYSENTER/SYSEXIT vs. SYSCALL/SYSRET by Andy Glew (2010)
- yuhong 9y agoTo add to this: the original 32-bit SYSCALL/SYSRET in AMD K6 just changed EIP and cleared a few flags too, and they "fixed" it for 64-bit by providing a mask of flags to clear and adding SWAPGS: http://web.archive.org/web/20120813101603/http://www.x86-64.org:80/pipermail/discuss/2000-October/001019.html http://web.archive.org/web/20120813101603/http://www.x86-64.... http://web.archive.org/web/20120615223202/http://www.x86-64.org:80/pipermail/discuss/2000-October/001009.html http://web.archive.org/web/20120615223202/http://www.x86-64.... When Intel copied SYSRET, they added a canonical address check which was a mistake because the fault would occur on the user RSP.