diff --git a/dmesg.c b/dmesg.c
index b6c990d..df2bce7 100644
--- a/dmesg.c
+++ b/dmesg.c
@@ -23,7 +23,6 @@
 
 #ifndef __alpha__
 # define __NR_klogctl __NR_syslog
-#include <sys/syscall.h>
 static inline _syscall3(int, klogctl, int, type, char *, b, int, len);
 #else							/* __alpha__ */
 #define klogctl syslog
diff --git a/init.c b/init.c
index e0b4651..79f14ab 100644
--- a/init.c
+++ b/init.c
@@ -110,7 +110,6 @@
 #if defined(__GLIBC__)
 #include <sys/kdaemon.h>
 #else
-#include <sys/syscall.h>		/* for _syscall() macro */
 static _syscall2(int, bdflush, int, func, int, data);
 #endif							/* __GLIBC__ */
 
diff --git a/init/init.c b/init/init.c
index e0b4651..79f14ab 100644
--- a/init/init.c
+++ b/init/init.c
@@ -110,7 +110,6 @@
 #if defined(__GLIBC__)
 #include <sys/kdaemon.h>
 #else
-#include <sys/syscall.h>		/* for _syscall() macro */
 static _syscall2(int, bdflush, int, func, int, data);
 #endif							/* __GLIBC__ */
 
diff --git a/insmod.c b/insmod.c
index 469d056..7e90dfb 100644
--- a/insmod.c
+++ b/insmod.c
@@ -40,7 +40,6 @@
 #include <assert.h>
 #include <getopt.h>
 #include <sys/utsname.h>
-#include <sys/syscall.h>
 
 //----------------------------------------------------------------------------
 //--------modutils module.h, lines 45-242
@@ -71,7 +70,7 @@
 #ifndef MODUTILS_MODULE_H
 #define MODUTILS_MODULE_H 1
 
-#ident "$Id: insmod.c,v 1.14 2000/07/10 20:08:44 andersen Exp $"
+#ident "$Id: insmod.c,v 1.15 2000/07/11 17:52:22 andersen Exp $"
 
 /* This file contains the structures used by the 2.0 and 2.1 kernels.
    We do not use the kernel headers directly because we do not wish
@@ -277,7 +276,7 @@
 #ifndef MODUTILS_OBJ_H
 #define MODUTILS_OBJ_H 1
 
-#ident "$Id: insmod.c,v 1.14 2000/07/10 20:08:44 andersen Exp $"
+#ident "$Id: insmod.c,v 1.15 2000/07/11 17:52:22 andersen Exp $"
 
 /* The relocatable object is manipulated using elfin types.  */
 
diff --git a/internal.h b/internal.h
index 8086aa1..081cd47 100644
--- a/internal.h
+++ b/internal.h
@@ -35,6 +35,10 @@
 #include <sys/param.h>
 #include <mntent.h>
 #include <regex.h>
+/* for the _syscall() macros */
+#include <sys/syscall.h>
+#include <linux/unistd.h>
+
 
 /* Some useful definitions */
 #define FALSE   ((int) 1)
diff --git a/miscutils/update.c b/miscutils/update.c
index 1fdf04a..f943461 100644
--- a/miscutils/update.c
+++ b/miscutils/update.c
@@ -24,7 +24,6 @@
  */
 
 #include "internal.h"
-#include <sys/syscall.h>
 #include <sys/param.h>
 #include <sys/syslog.h>
 
diff --git a/modutils/insmod.c b/modutils/insmod.c
index 469d056..7e90dfb 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -40,7 +40,6 @@
 #include <assert.h>
 #include <getopt.h>
 #include <sys/utsname.h>
-#include <sys/syscall.h>
 
 //----------------------------------------------------------------------------
 //--------modutils module.h, lines 45-242
@@ -71,7 +70,7 @@
 #ifndef MODUTILS_MODULE_H
 #define MODUTILS_MODULE_H 1
 
-#ident "$Id: insmod.c,v 1.14 2000/07/10 20:08:44 andersen Exp $"
+#ident "$Id: insmod.c,v 1.15 2000/07/11 17:52:22 andersen Exp $"
 
 /* This file contains the structures used by the 2.0 and 2.1 kernels.
    We do not use the kernel headers directly because we do not wish
@@ -277,7 +276,7 @@
 #ifndef MODUTILS_OBJ_H
 #define MODUTILS_OBJ_H 1
 
-#ident "$Id: insmod.c,v 1.14 2000/07/10 20:08:44 andersen Exp $"
+#ident "$Id: insmod.c,v 1.15 2000/07/11 17:52:22 andersen Exp $"
 
 /* The relocatable object is manipulated using elfin types.  */
 
diff --git a/modutils/rmmod.c b/modutils/rmmod.c
index a73d789..3158686 100644
--- a/modutils/rmmod.c
+++ b/modutils/rmmod.c
@@ -26,8 +26,6 @@
 #include <errno.h>
 #include <unistd.h>
 #define __LIBRARY__
-#include <asm/unistd.h>
-/* #include <sys/syscall.h> */
 
 
 
diff --git a/rmmod.c b/rmmod.c
index a73d789..3158686 100644
--- a/rmmod.c
+++ b/rmmod.c
@@ -26,8 +26,6 @@
 #include <errno.h>
 #include <unistd.h>
 #define __LIBRARY__
-#include <asm/unistd.h>
-/* #include <sys/syscall.h> */
 
 
 
diff --git a/swaponoff.c b/swaponoff.c
index bb8395f..b43f3cd 100644
--- a/swaponoff.c
+++ b/swaponoff.c
@@ -28,7 +28,6 @@
 #include <mntent.h>
 #include <dirent.h>
 #include <errno.h>
-#include <sys/syscall.h>
 
 _syscall2(int, swapon, const char *, path, int, flags);
 _syscall1(int, swapoff, const char *, path);
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index a185a4c..55fd8dc 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -40,7 +40,6 @@
 #include <sys/types.h>
 #include <sys/un.h>
 #include <sys/param.h>
-#include <sys/syscall.h>
 
 #if ! defined __GLIBC__ && ! defined __UCLIBC__
 
diff --git a/syslogd.c b/syslogd.c
index a185a4c..55fd8dc 100644
--- a/syslogd.c
+++ b/syslogd.c
@@ -40,7 +40,6 @@
 #include <sys/types.h>
 #include <sys/un.h>
 #include <sys/param.h>
-#include <sys/syscall.h>
 
 #if ! defined __GLIBC__ && ! defined __UCLIBC__
 
diff --git a/update.c b/update.c
index 1fdf04a..f943461 100644
--- a/update.c
+++ b/update.c
@@ -24,7 +24,6 @@
  */
 
 #include "internal.h"
-#include <sys/syscall.h>
 #include <sys/param.h>
 #include <sys/syslog.h>
 
diff --git a/util-linux/dmesg.c b/util-linux/dmesg.c
index b6c990d..df2bce7 100644
--- a/util-linux/dmesg.c
+++ b/util-linux/dmesg.c
@@ -23,7 +23,6 @@
 
 #ifndef __alpha__
 # define __NR_klogctl __NR_syslog
-#include <sys/syscall.h>
 static inline _syscall3(int, klogctl, int, type, char *, b, int, len);
 #else							/* __alpha__ */
 #define klogctl syslog
diff --git a/util-linux/swaponoff.c b/util-linux/swaponoff.c
index bb8395f..b43f3cd 100644
--- a/util-linux/swaponoff.c
+++ b/util-linux/swaponoff.c
@@ -28,7 +28,6 @@
 #include <mntent.h>
 #include <dirent.h>
 #include <errno.h>
-#include <sys/syscall.h>
 
 _syscall2(int, swapon, const char *, path, int, flags);
 _syscall1(int, swapoff, const char *, path);
diff --git a/utility.c b/utility.c
index cbbc02f..0f78f28 100644
--- a/utility.c
+++ b/utility.c
@@ -133,12 +133,10 @@
 
 
 #if defined BB_FREE || defined BB_INIT || defined BB_UNAME || defined BB_UPTIME
-#include <sys/syscall.h>
 _syscall1(int, sysinfo, struct sysinfo *, info);
 #endif                                                 /* BB_INIT */
 
 #if defined BB_MOUNT || defined BB_UMOUNT
-#include <sys/syscall.h>
 
 #ifndef __NR_umount2
 #define __NR_umount2           52
