aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-10-16 04:42:33 +0000
committerUlrich Drepper <drepper@redhat.com>2002-10-16 04:42:33 +0000
commit885bc0246bfef6d3f9337c33d240e120ef1e5889 (patch)
treedf083ecdb809c43ebd1ad193aa33a439fc3ca7b1 /sysdeps/unix
parent708296036c9753b9d08cba905a398f11095101c9 (diff)
downloadglibc-885bc0246bfef6d3f9337c33d240e120ef1e5889.tar
glibc-885bc0246bfef6d3f9337c33d240e120ef1e5889.tar.gz
glibc-885bc0246bfef6d3f9337c33d240e120ef1e5889.tar.bz2
glibc-885bc0246bfef6d3f9337c33d240e120ef1e5889.zip
Update.
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL): Define for 2.4+ kernels. * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which are known to have the vfork syscall. Don't confuse the CPUs branch prediction unit by jumping to the return address.
Diffstat (limited to 'sysdeps/unix')
-rw-r--r--sysdeps/unix/sysv/linux/kernel-features.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/kernel-features.h b/sysdeps/unix/sysv/linux/kernel-features.h
index a8145e1590..0796a8a1fd 100644
--- a/sysdeps/unix/sysv/linux/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/kernel-features.h
@@ -214,6 +214,11 @@
# define __ASSUME_SET_THREAD_AREA_SYSCALL 1
#endif
+/* The vfork syscall on x86 was definitely available in 2.4. */
+#if __LINUX_KERNEL_VERSION >= 132097 && defined __i386__
+# define __ASSUME_VFORK_SYSCALL 1
+#endif
+
/* There are an infinite number of PA-RISC kernel versions numbered
2.4.0. But they've not really been released as such. We require
and expect the final version here. */