about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--arch/x32/src/sysinfo.c5
-rw-r--r--src/linux/sysinfo.c5
-rw-r--r--src/linux/x32/sysinfo.s6
3 files changed, 9 insertions, 7 deletions
diff --git a/arch/x32/src/sysinfo.c b/arch/x32/src/sysinfo.c
index 0f11cf3c..d1c1b148 100644
--- a/arch/x32/src/sysinfo.c
+++ b/arch/x32/src/sysinfo.c
@@ -1,5 +1,6 @@
 #include <sys/sysinfo.h>
 #include "syscall.h"
+#include "libc.h"
 
 #define klong long long
 #define kulong unsigned long long
@@ -20,7 +21,7 @@ struct kernel_sysinfo {
 	unsigned mem_unit;
 };
 
-int __x32_sysinfo(struct sysinfo *info)
+int __lsysinfo(struct sysinfo *info)
 {
 	struct kernel_sysinfo tmp;
 	int ret = syscall(SYS_sysinfo, &tmp);
@@ -45,3 +46,5 @@ int __x32_sysinfo(struct sysinfo *info)
 	info->mem_unit = (tmp.mem_unit ? tmp.mem_unit : 1) << shifts;
 	return ret;
 }
+
+weak_alias(__lsysinfo, sysinfo);
diff --git a/src/linux/sysinfo.c b/src/linux/sysinfo.c
index 7e64f330..4b5a798d 100644
--- a/src/linux/sysinfo.c
+++ b/src/linux/sysinfo.c
@@ -1,7 +1,10 @@
 #include <sys/sysinfo.h>
 #include "syscall.h"
+#include "libc.h"
 
-int sysinfo(struct sysinfo *info)
+int __lsysinfo(struct sysinfo *info)
 {
 	return syscall(SYS_sysinfo, info);
 }
+
+weak_alias(__lsysinfo, sysinfo);
diff --git a/src/linux/x32/sysinfo.s b/src/linux/x32/sysinfo.s
index 43c378c1..53d79db2 100644
--- a/src/linux/x32/sysinfo.s
+++ b/src/linux/x32/sysinfo.s
@@ -1,5 +1 @@
-.text
-.global sysinfo
-.type   sysinfo,@function
-sysinfo:
-	jmp __x32_sysinfo
+# see arch/x32/src/sysinfo.c