Browse Source

remove standalone syscall cruft

this was originally written for an early draft of the library where
non-standard functions would reside in a static library separate from
the shared libc.so, which would implement a pure standard. the idea
was not to depend on an implementation-dependent __syscall_ret
function in the main libc. but it turned out to be better to put
everything in a single library for both static and dynamic linking
uses, and thus the (incomplete) remnants of this feature were just
enlarging the source and binary.
Rich Felker 14 years ago
parent
commit
9b235e8374

+ 1 - 11
arch/i386/syscall.h

@@ -7,17 +7,7 @@
 
 #define SYSCALL_SIGSET_SIZE 8
 
-#if defined(SYSCALL_STANDALONE)
-#include <errno.h>
-static inline long __syscall_ret(unsigned long r)
-{
-	if (r >= (unsigned long)-1 - 4096) {
-		errno = -(long)r;
-		return -1;
-	}
-	return (long)r;
-}
-#elif defined(SYSCALL_NORETURN)
+#if defined(SYSCALL_NORETURN)
 static inline long __syscall_ret(unsigned long r)
 {
 	for(;;);

+ 1 - 11
arch/x86_64/syscall.h

@@ -4,17 +4,7 @@
 #define SYSCALL_LL(x) x, 0
 #define SYSCALL_SIGSET_SIZE 8
 
-#if defined(SYSCALL_STANDALONE)
-#include <errno.h>
-static inline long __syscall_ret(unsigned long r)
-{
-	if (r >= (unsigned long)-1 - 4096) {
-		errno = -(long)r;
-		return -1;
-	}
-	return (long)r;
-}
-#elif defined(SYSCALL_NORETURN)
+#if defined(SYSCALL_NORETURN)
 static inline long __syscall_ret(unsigned long r)
 {
 	for(;;);

+ 0 - 1
src/linux/chroot.c

@@ -1,5 +1,4 @@
 #include <unistd.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int chroot(const char *path)

+ 0 - 1
src/linux/klogctl.c

@@ -1,4 +1,3 @@
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int klogctl (int type, char *buf, int len)

+ 0 - 1
src/linux/mount.c

@@ -1,5 +1,4 @@
 #include <sys/mount.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int mount(const char *special, const char *dir, const char *fstype, unsigned long flags, const void *data)

+ 0 - 1
src/linux/sethostname.c

@@ -1,5 +1,4 @@
 #include <unistd.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int sethostname(const char *name, size_t len)

+ 0 - 1
src/linux/swapoff.c

@@ -1,5 +1,4 @@
 #include <sys/swap.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int swapoff(const char *path)

+ 0 - 1
src/linux/swapon.c

@@ -1,5 +1,4 @@
 #include <sys/swap.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int swapon(const char *path, int flags)

+ 0 - 1
src/linux/sysinfo.c

@@ -1,4 +1,3 @@
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 struct sysinfo;

+ 0 - 1
src/linux/utimes.c

@@ -1,5 +1,4 @@
 #include <sys/time.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 int utimes(const char *path, const struct timeval times[2])

+ 0 - 1
src/linux/wait3.c

@@ -1,6 +1,5 @@
 #include <sys/wait.h>
 #include <sys/resource.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 pid_t wait4(pid_t, int *, int, struct rusage *);

+ 0 - 1
src/linux/wait4.c

@@ -1,7 +1,6 @@
 #include <sys/wait.h>
 #include <sys/resource.h>
 #include <string.h>
-#define SYSCALL_STANDALONE
 #include "syscall.h"
 
 pid_t wait4(pid_t pid, int *status, int options, struct rusage *usage)