diff options
Diffstat (limited to 'libc/sysdeps/linux/common/create_module.c')
-rw-r--r-- | libc/sysdeps/linux/common/create_module.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/libc/sysdeps/linux/common/create_module.c b/libc/sysdeps/linux/common/create_module.c index 7bd38a39c..461ba5bc5 100644 --- a/libc/sysdeps/linux/common/create_module.c +++ b/libc/sysdeps/linux/common/create_module.c @@ -13,11 +13,8 @@ #ifdef __NR_create_module -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || defined(__thumb__) || defined(__cris__) || defined(__i960__) +#if defined(__UCLIBC_BROKEN_CREATE_MODULE__) # define __NR___create_module __NR_create_module -# ifdef __STR_NR_create_module -# define __STR_NR___create_module __STR_NR_create_module -# endif static inline _syscall2(long, __create_module, const char *, name, size_t, size); /* By checking the value of errno, we know if we have been fooled * by the syscall2 macro making a very high address look like a @@ -33,7 +30,7 @@ unsigned long create_module(const char *name, size_t size) } return ret; } -#elif defined(__alpha__) +#elif defined(__UCLIBC_SLIGHTLY_BROKEN_CREATE_MODULE__) # define __NR___create_module __NR_create_module /* Alpha doesn't have the same problem, exactly, but a bug in older kernels fails to clear the error flag. Clear it here explicitly. */ |