On Tue, May 7, 2013 at 11:54 AM, Chengwei Yang <chengwei.yang@xxxxxxxxx> wrote: > This issue introduced by a fix for syscall(-1, ...) is invalid on some > arch. The error thrown by 'make check' likes below. > > testsuite/init_module.c: In function 'syscall': > testsuite/init_module.c:317:17: error: '__NR_finit_module' undeclared > (first use in this function) > testsuite/init_module.c:317:17: note: each undeclared identifier is > reported only once for each function it appears in > make[2]: *** [testsuite/init_module.lo] Error 1 > make[1]: *** [check-am] Error 2 > make: *** [check-recursive] Error 1 > --- > libkmod/missing.h | 16 ++++++++++------ > 1 file changed, 10 insertions(+), 6 deletions(-) > > diff --git a/libkmod/missing.h b/libkmod/missing.h > index b31af84..52dbcc7 100644 > --- a/libkmod/missing.h > +++ b/libkmod/missing.h > @@ -12,6 +12,10 @@ > # define MODULE_INIT_IGNORE_MODVERSIONS 1 > #endif > > +#ifndef __NR_finit_module > +# define __NR_finit_module -1 > +#endif > + > #ifndef MODULE_INIT_IGNORE_VERMAGIC > # define MODULE_INIT_IGNORE_VERMAGIC 2 > #endif > @@ -19,11 +23,11 @@ > #ifndef HAVE_FINIT_MODULE > static inline int finit_module(int fd, const char *uargs, int flags) > { > -#ifndef __NR_finit_module > - errno = ENOSYS; > - return -1; > -#else > - return syscall(__NR_finit_module, fd, uargs, flags); > -#endif > + if (__NR_finit_module == -1) { > + errno = ENOSYS; > + return -1; > + } else { > + return syscall(__NR_finit_module, fd, uargs, flags); > + } humn... my bad not applying it to testsuite. But I would expect the same fix being applied to testsuite instead of changing the check to runtime. Lucas De Marchi -- To unsubscribe from this list: send the line "unsubscribe linux-modules" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html