On 2015-09-24 14:19, Andy Lutomirski wrote: > Hi- > > It looks like 32-bit x86 Debian glibc doesn't use AT_SYSINFO. This > kills syscall performance. Upstream glibc as well as Fedora's glibc > work fine. > > This test: > > https://git.kernel.org/cgit/linux/kernel/git/luto/linux.git/commit/?h=x86/entry_compat&id=9d742073d4c0449b262dbe0a3dab4a7c1d831500 > > inadvertently found this issue. > > Any ideas? I'm only barely a Debian user -- I have a Debian-based test VM.
By default, the 32-bit glibc on Debian is built for i586, which does not have the sysenter/syscall instructions. Therefore it doesn't use AT_SYSINFO. Now you can install the libc6-i686 package, which as it's name says is built for i686, and thus can use the sysenter/syscall instructions and AT_SYSINFO. Then your test passes successfully. Aurelien -- Aurelien Jarno GPG: 4096R/1DDD8C9B [email protected] http://www.aurel32.net

