Messages in this thread Patch in this message | | | From | (Eugene Crosser) | Subject | knfsd and asm/system.h / linux/kernel.h problem [w/patch] | Date | 11 Aug 1998 22:29:00 GMT |
| |
Is anyone working on the kernel nfs server? is linux-nfs-0.4.21.tar.gz the most recent version? I tried to compile it with the kernel 2.1.112 and 2.1.115 and the tools did not compile because they indirectly include asm/system.h which has in like 40:
extern void FASTCALL(__switch_to(struct task_struct *prev, ....
FASTCALL is defined in linux/kernel.h, but inside #ifdef __KERNEL__. NFS tools are (naturally) compiled without this #define. As a result, there is a syntax error. Moving #define FASTCALL outside of #ifdef __KERNEL__ helps. I am attaching the diff but I am not sure if it is right.
knfsd (or kmountd?) works in a weird way anyway... Sometimes it refuses to satisfy mount request without obvious reason. Locking seems to always fail...
-- Eugene Crosser; 2:5020/230@fidonet; http://www.average.org/~crosser/--- include/linux/kernel.h.orig Tue Apr 14 03:57:10 1998 +++ include/linux/kernel.h Wed Aug 12 02:21:53 1998 @@ -5,6 +5,12 @@ * 'kernel.h' contains some often-used function prototypes etc */ +#ifdef __i386__ +#define FASTCALL(x) x __attribute__((regparm(3))) +#else +#define FASTCALL(x) x +#endif + #ifdef __KERNEL__ #include <stdarg.h> @@ -32,12 +38,6 @@ # define NORET_TYPE /**/ # define ATTRIB_NORET __attribute__((noreturn)) # define NORET_AND noreturn, - -#ifdef __i386__ -#define FASTCALL(x) x __attribute__((regparm(3))) -#else -#define FASTCALL(x) x -#endif extern void math_error(void); NORET_TYPE void panic(const char * fmt, ...) | |