summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-10-22 03:48:09 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2015-10-22 03:52:27 +0200
commit1303e7eb2b65f5275a57b66a7bebc8bfe1b32d4f (patch)
tree006aefc6730932a4a807c1ad4ea055c671511fd6
parenta8336e957aee920c3da2e2bc049e5615936d3f11 (diff)
alpha: add special umount2 handling
Only on Linux alpha __NR_oldumount is defined and a umount not umount2 syscall, but with two parameter is used. Add special handling for it and an alias for umount2() users. There was a discussion about this special handling, but it seems it was never committed upstream: http://marc.info/?l=linux-alpha&m=137455037930738&w=2 Runtime tested with qemu-alpha and a statically linked busybox binary.
-rw-r--r--libc/sysdeps/linux/common/umount2.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libc/sysdeps/linux/common/umount2.c b/libc/sysdeps/linux/common/umount2.c
index 08e0f3388..c86f3c80f 100644
--- a/libc/sysdeps/linux/common/umount2.c
+++ b/libc/sysdeps/linux/common/umount2.c
@@ -10,7 +10,12 @@
#include <sys/syscall.h>
#if defined __UCLIBC_LINUX_SPECIFIC__ && defined __NR_umount2
-# include <sys/mount.h>
+#include <sys/mount.h>
_syscall2(int, umount2, const char *, special_file, int, flags)
libc_hidden_def(umount2)
#endif
+
+#if defined __UCLIBC_LINUX_SPECIFIC__ && defined __NR_oldumount
+_syscall2(int, umount, const char *, special_file, int, flags)
+strong_alias(umount,umount2)
+#endif