kernel_optimize_test/arch/x86_64/ia32
Andi Kleen 3cfc348bf9 [PATCH] x86: Add portable getcpu call
For NUMA optimization and some other algorithms it is useful to have a fast
to get the current CPU and node numbers in user space.

x86-64 added a fast way to do this in a vsyscall. This adds a generic
syscall for other architectures to make it a generic portable facility.

I expect some of them will also implement it as a faster vsyscall.

The cache is an optimization for the x86-64 vsyscall optimization. Since
what the syscall returns is an approximation anyways and user space
often wants very fast results it can be cached for some time.  The norma
methods to get this information in user space are relatively slow

The vsyscall is in a better position to manage the cache because it has direct
access to a fast time stamp (jiffies). For the generic syscall optimization
it doesn't help much, but enforce a valid argument to keep programs
portable

I only added an i386 syscall entry for now. Other architectures can follow
as needed.

AK: Also added some cleanups from Andrew Morton

Signed-off-by: Andi Kleen <ak@suse.de>
2006-09-26 10:52:28 +02:00
..
audit.c [PATCH] audit: AUDIT_PERM support 2006-09-11 13:32:30 -04:00
fpu32.c [PATCH] x86_64: Remove long obsolete CVS 2006-06-26 10:48:16 -07:00
ia32_aout.c [PATCH] x86_64: Allow modular build of ia32 aout loader 2005-11-14 19:55:16 -08:00
ia32_binfmt.c [PATCH] x86_64: Don't write out segments from vsyscall32 DSO if it is not mapped 2006-08-30 16:05:16 -07:00
ia32_signal.c [PATCH] Add TIF_RESTORE_SIGMASK 2006-09-26 10:52:26 +02:00
ia32entry.S [PATCH] x86: Add portable getcpu call 2006-09-26 10:52:28 +02:00
ipc32.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [PATCH] vDSO hash-style fix 2006-07-31 13:28:43 -07:00
mmap32.c [PATCH] x86_64: Flexmap for 32bit and randomized mappings for 64bit 2006-01-16 23:18:35 -08:00
ptrace32.c [PATCH] x86_64: Fix access check in ptrace compat 2006-07-10 15:12:33 -07:00
sys_ia32.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
syscall32_syscall.S [PATCH] x86_64: Icecream has no way of detecting assembler-level includes 2005-07-28 21:46:01 -07:00
syscall32.c [PATCH] error path in setup_arg_pages() misses vm_unacct_memory() 2005-09-14 11:18:13 -07:00
tls32.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vsyscall-sigreturn.S [PATCH] Mark unwind info for signal trampolines in vDSOs 2006-03-31 12:18:52 -08:00
vsyscall-syscall.S [PATCH] x86_64: Allow compilation on a 32bit biarch toolchain 2006-01-11 19:04:52 -08:00
vsyscall-sysenter.S [PATCH] x86_64: Allow compilation on a 32bit biarch toolchain 2006-01-11 19:04:52 -08:00
vsyscall.lds [PATCH] vDSO hash-style fix 2006-07-31 13:28:43 -07:00