lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 20 Oct 2009 09:21:32 +0200 From: Eric Dumazet <eric.dumazet@...il.com> To: Jan Beulich <JBeulich@...ell.com> CC: mingo@...e.hu, tglx@...utronix.de, hpa@...or.com, linux-kernel@...r.kernel.org Subject: Re: [PATCH] x86-64: adjust ia32entry branches for better static prediction Jan Beulich a écrit : > Swap branch pairs so that the static branch prediction logic would > consider the syscall-number-in-range case the taken path. > > Signed-off-by: Jan Beulich <jbeulich@...ell.com> > > --- > arch/x86/ia32/ia32entry.S | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > --- linux-2.6.32-rc5/arch/x86/ia32/ia32entry.S 2009-10-19 13:12:43.000000000 +0200 > +++ 2.6.32-rc5-x86_64-ia32-syscall-trace-branch-dir/arch/x86/ia32/ia32entry.S 2009-10-19 09:36:39.000000000 +0200 > @@ -249,9 +249,9 @@ sysenter_tracesys: > call syscall_trace_enter > LOAD_ARGS32 ARGOFFSET /* reload args from stack in case ptrace changed it */ > RESTORE_REST > - cmpl $(IA32_NR_syscalls-1),%eax > - ja int_ret_from_sys_call /* sysenter_tracesys has set RAX(%rsp) */ > - jmp sysenter_do_call > + cmpl $IA32_NR_syscalls,%eax > + jb sysenter_do_call > + jmp int_ret_from_sys_call /* sysenter_tracesys has set RAX(%rsp) */ > CFI_ENDPROC on cmov enabled build, we could use cmov instruction to load eax with number that calls enosys_syscall(), to avoid loading -ENOSYS,RAX and these branches... -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists