![]() | ||||||||||
Messages in this thread |
Ulrich Drepper wrote: > Nakajima, Jun wrote: > >>AMD (at least Athlon, as far as I know) supports sysenter/sysexit. We tested it on an Athlon box as well, and it worked fine. And sysenter/sysexit was better than int/iret too (about 40% faster) there. > > > That's good to know but not what I meant. > > I referred to syscall/sysret opcodes. They are broken in their own way > (destroying ecx on kernel entry) but at least they preserve eip. > syscall is pretty much unusable unless the NMI is changed to a task gate. syscall does not change %esp on entry to the kernel, so an NMI before the manual stack switch would still use the user stack, which is not guaranteed to be valid - oops. x86-64 gets around this by using an interrupt stack, its replacement for task gates. -- Brian Gerst - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | |||||||||
| Last update: 2005-03-22 12:31 [W:0.257 / U:0.000 seconds] ©2003-2008 Jasper Spaans | ||||||||||