aboutsummaryrefslogtreecommitdiff
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
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.
-rw-r--r--ChangeLog7
-rw-r--r--sysdeps/unix/sysv/linux/kernel-features.h5
2 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 5283a65c66..95c80382d1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -70,6 +70,13 @@
2002-10-15 Ulrich Drepper <drepper@redhat.com>
+ * 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.
+
* sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
support for reiserfs and xfs.
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. */