public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [uPATCH] 2.4.17-preX compile fix for RedHat gcc 3.1-0.10
@ 2001-12-11  5:27 Wayne Whitney
  2001-12-11 19:51 ` 2.4.17-pre8 OOPS with " Wayne Whitney
  0 siblings, 1 reply; 3+ messages in thread
From: Wayne Whitney @ 2001-12-11  5:27 UTC (permalink / raw)
  To: LKML


Hello,

I recently upgraded to "gcc version 3.1 20011127 (Red Hat Linux Rawhide
3.1-0.10)".  It compiles the recent 2.4.17-preX kernels OK, with one small
hitch:  rpciod_tcp_dispatcher in module net/sunrpc/sunrpc.o is an
unresolved symbol.  The patch below (or an equivalent) is required for
net/sunrpc/sched.c to compile properly with this version of gcc.

The situation is that net/sunrpc/sched.c (the only caller of
rpciod_tcp_dispatcher) includes linux/sunrpc/clnt.h, which includes
linux/sunrpc/xprt.h.  linux/sunrpc/clnt.h defines rpciod_tcp_dispatcher as
extern void, while linux/sunrpc/xprt.h defines it as static inline.  
Apparently this latter definition is the intended one, and while earlier
versions of gcc chose it, the above version of gcc choses the first
definition.

Since I'm no C expert, I don't know what the correct behavior for gcc is.
So maybe this is a bug in the kernel, or maybe it is a bug in the above
version of gcc.

Cheers,
Wayne

--- linux-2.4.17-pre6/include/linux/sunrpc/clnt.h	Mon Dec 10 20:36:26 2001
+++ linux-2.4.17-pre7/include/linux/sunrpc/clnt.h	Mon Dec 10 20:50:39 2001
@@ -136,7 +136,6 @@
 	xprt_set_timeout(&clnt->cl_timeout, retr, incr);
 }
 
-extern void rpciod_tcp_dispatcher(void);
 extern void rpciod_wake_up(void);
 
 /*


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2001-12-11 20:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-12-11  5:27 [uPATCH] 2.4.17-preX compile fix for RedHat gcc 3.1-0.10 Wayne Whitney
2001-12-11 19:51 ` 2.4.17-pre8 OOPS with " Wayne Whitney
2001-12-11 20:23   ` Benjamin LaHaise

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox