Browse Source

fix __syscall declaration with wrong visibility in syscall_arch.h

remove __syscall declaration where it is not needed (aarch64, arm,
microblaze, or1k) and add the hidden attribute where it is (mips).
Szabolcs Nagy 10 năm trước cách đây
mục cha
commit
18f75b80fd

+ 0 - 2
arch/aarch64/syscall_arch.h

@@ -3,8 +3,6 @@
 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
 #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
 
-long (__syscall)(long, ...);
-
 #define __asm_syscall(...) do { \
 	__asm__ __volatile__ ( "svc 0" \
 	: "=r"(x0) : __VA_ARGS__ : "memory", "cc"); \

+ 0 - 2
arch/arm/syscall_arch.h

@@ -3,8 +3,6 @@
 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
 #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
 
-long (__syscall)(long, ...);
-
 #define __asm_syscall(...) do { \
 	__asm__ __volatile__ ( "svc 0" \
 	: "=r"(r0) : __VA_ARGS__ : "memory"); \

+ 0 - 2
arch/microblaze/syscall_arch.h

@@ -3,8 +3,6 @@
 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
 #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
 
-long (__syscall)(long, ...);
-
 #ifndef __clang__
 
 static __inline long __syscall0(long n)

+ 3 - 0
arch/mips/syscall_arch.h

@@ -3,6 +3,9 @@
 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
 #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
 
+#ifdef SHARED
+__attribute__((visibility("hidden")))
+#endif
 long (__syscall)(long, ...);
 
 #define SYSCALL_RLIM_INFINITY (-1UL/2)

+ 0 - 2
arch/or1k/syscall_arch.h

@@ -5,8 +5,6 @@
 
 #define SYSCALL_MMAP2_UNIT 8192ULL
 
-long (__syscall)(long, ...);
-
 #ifndef __clang__
 
 static __inline long __syscall0(long n)