summaryrefslogtreecommitdiff
path: root/libc
diff options
context:
space:
mode:
authorMark Salter <msalter@redhat.com>2012-05-04 08:18:46 -0400
committerMike Frysinger <vapier@gentoo.org>2012-05-05 15:02:27 -0400
commit036daaa8e143c0865ac92359396f38c0d7e2c1f2 (patch)
tree82a2754db999707c7eae0ce796f31cfdc90a673c /libc
parent3457d04a3d79cd046ef5d1b000047805aa03ec97 (diff)
drop support for old systems lacking vfork
Only really old systems (<=linux-2.0) lack a dedicated vfork system call. The code that is in place to support them is causing issues with newer arches that also don't provide a vfork system call -- instead, they do vfork by calling clone in userspace. If anyone cares about these really old systems, they can submit a patch to make the system work with them while not breaking newer systems. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'libc')
-rw-r--r--libc/stdio/popen.c9
-rw-r--r--libc/stdlib/system.c5
-rw-r--r--libc/stdlib/unix_grantpt.c6
3 files changed, 0 insertions, 20 deletions
diff --git a/libc/stdio/popen.c b/libc/stdio/popen.c
index d5c60cf2a..dfbfd9611 100644
--- a/libc/stdio/popen.c
+++ b/libc/stdio/popen.c
@@ -26,15 +26,6 @@
#warning "hmm... susv3 says Pipe streams are byte-oriented."
#endif /* __UCLIBC_MJN3_ONLY__ */
-
-/* uClinux-2.0 has vfork, but Linux 2.0 doesn't */
-#include <sys/syscall.h>
-#if ! defined __NR_vfork
-# define vfork fork
-# define VFORK_LOCK ((void) 0)
-# define VFORK_UNLOCK ((void) 0)
-#endif
-
#ifndef VFORK_LOCK
__UCLIBC_MUTEX_STATIC(mylock, PTHREAD_MUTEX_INITIALIZER);
# define VFORK_LOCK __UCLIBC_MUTEX_LOCK(mylock)
diff --git a/libc/stdlib/system.c b/libc/stdlib/system.c
index a92c307c3..ec25ead73 100644
--- a/libc/stdlib/system.c
+++ b/libc/stdlib/system.c
@@ -24,11 +24,6 @@ extern __typeof(system) __libc_system;
* need to figure out why still
*/
#if !defined __UCLIBC_HAS_THREADS_NATIVE__ || defined __sparc__
-/* uClinux-2.0 has vfork, but Linux 2.0 doesn't */
-#include <sys/syscall.h>
-#ifndef __NR_vfork
-# define vfork fork
-#endif
int __libc_system(const char *command)
{
diff --git a/libc/stdlib/unix_grantpt.c b/libc/stdlib/unix_grantpt.c
index 1be0a7ddb..527b8c928 100644
--- a/libc/stdlib/unix_grantpt.c
+++ b/libc/stdlib/unix_grantpt.c
@@ -31,12 +31,6 @@
#include "pty-private.h"
-/* uClinux-2.0 has vfork, but Linux 2.0 doesn't */
-#include <sys/syscall.h>
-#if ! defined __NR_vfork
-#define vfork fork
-#endif
-
/* Return the result of ptsname_r in the buffer pointed to by PTS,
which should be of length BUF_LEN. If it is too long to fit in
this buffer, a sufficiently long buffer is allocated using malloc,