Can't load NFS server module with a custom 8.0 kernel

Kostik Belousov kostikbel at gmail.com
Fri Feb 19 17:44:33 UTC 2010


On Fri, Feb 19, 2010 at 04:52:35PM +0100, Marius Strobl wrote:
> On Fri, Feb 19, 2010 at 12:07:14AM +0200, Kostik Belousov wrote:
> > On Thu, Feb 18, 2010 at 03:00:28PM -0500, Boris Kochergin wrote:
> > > Rick Macklem wrote:
> > > >
> > > >
> > > >On Thu, 18 Feb 2010, Boris Kochergin wrote:
> > > >
> > > >>Ahoy. I didn't get any replies to this on -net, so I thought I'd try 
> > > >>here. I have an 8.0-RELEASE-p2/amd64 machine running a custom kernel 
> > > >>(configuration file at http://acm.poly.edu/~spawk/ACM) and I am 
> > > >>unable to use the NFS server module on it. After loading the nfssvc 
> > > >>module, attempting to load the nfsserver module fails and the 
> > > >>following appears in dmesg:
> > > >>
> > > >>Feb  3 19:35:54 acm kernel: link_elf_obj: symbol svcpool_create 
> > > >>undefined
> > > >>Feb  3 19:35:54 acm kernel: linker_load_file: Unsupported file type
> > > >>
> > > >>I see a reference to the problem at 
> > > >>http://lists.freebsd.org/pipermail/svn-src-all/2008-November/001025.html. 
> > > >>Am I missing something or has it never gotten resolved? Thanks.
> > > >>
> > > >I don't know diddly about the module loading stuff, but you could try
> > > >this patch. (svcpool_create() is a part of the krpc, which is listed
> > > >as a module that nfsserver depends on)
> > > >
> > > >rick
> > > >--- untested patch for nfs_srvsubs.c ---
> > > >--- nfsserver/nfs_srvsubs.c.sav    2010-02-18 14:41:52.000000000 -0500
> > > >+++ nfsserver/nfs_srvsubs.c    2010-02-18 14:42:12.000000000 -0500
> > > >@@ -554,7 +554,7 @@
> > > >     nfsrv_modevent,
> > > >     NULL,
> > > > };
> > > >-DECLARE_MODULE(nfsserver, nfsserver_mod, SI_SUB_VFS, SI_ORDER_ANY);
> > > >+DECLARE_MODULE(nfsserver, nfsserver_mod, SI_SUB_VFS, SI_ORDER_FIRST);
> > > >
> > > > /* So that loader and kldload(2) can find us, wherever we are.. */
> > > > MODULE_VERSION(nfsserver, 1);
> > > Thanks for the patch, but the problem persists with it, I'm afraid.
> > 
> > I think this is changed in HEAD, and part of the changes are already in
> > stable/8, which is different from 8.0 too.
> > 
> > Anyway, for HEAD nfsserver we need 1. nfscommon 2. nfs_common.
> 
> Could you please elaborate on why nfsserver requires the former?
Not any more. I did a check yesterday on the outdated tree without
realizing this. Sorry.

> At least as far as svcpool_create() is concerned I see no reason
> why it should require nfscommon. Also, when testing r203968 the
> following list of modules where sufficient to have both nfsclient
> and nfsserver working:
> krpc.ko
> nfs_common.ko
> nfsclient.ko
> nfslockd.ko
> nfsserver.ko
> nfssvc.ko

I confirm. So the only thing missing ATM is to actually add nfs_common.ko
to the build.

diff --git a/sys/modules/Makefile b/sys/modules/Makefile
index 06a4a5d..caa9f3c 100644
--- a/sys/modules/Makefile
+++ b/sys/modules/Makefile
@@ -194,6 +194,7 @@ SUBDIR=	${_3dfx} \
 	${_ndis} \
 	${_netgraph} \
 	${_nfe} \
+	nfs_common \
 	nfscl \
 	nfsclient \
 	nfscommon \
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20100219/c1961978/attachment.pgp


More information about the freebsd-stable mailing list