Messages in this thread | | | From | Andrew Lutomirski <> | Date | Mon, 22 Aug 2011 09:34:27 -0400 | Subject | Re: [uml-devel] SYSCALL, ptrace and syscall restart breakages (Re: [RFC] weird crap with vdso on uml/i386) |
| |
On Mon, Aug 22, 2011 at 5:53 AM, Ingo Molnar <mingo@kernel.org> wrote: > > * H. Peter Anvin <hpa@zytor.com> wrote: > >> Borislav, >> >> We're tracking down an issue with the way system call arguments are >> handled on 32 bits. We have a solution for SYSENTER but not >> SYSCALL; fixing SYSCALL "properly" appears to be very difficult at >> best. >> >> So the question is: how much overhead would it be to simply fall >> back to int $0x80 or some other legacy-style domain crossing >> instruction for 32-bit system calls on AMD64 processors? We don't >> ever use SYSCALL in legacy mode, so native i386 kernels are >> unaffected. > > Last i measured INT80 and SYSCALL costs they were pretty close to > each other on AMD CPUs - closer than on Intel.
From memory, SYSCALL in 64-bit mode on Sandy Bridge is much faster than int 0xcc, which is presumably about the same speed as int 0x80. That's because SYSCALL is blazingly fast (<30 ns for a whole system call) and int is slower.
--Andy
> > Also, most installations are either pure 32-bit or dominantly 64-bit, > the significantly mixed-mode case is dwindling. > > Unifying some more in this area would definitely simplify things ... > > Thanks, > > Ingo > -- 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/
| |