Can't load NFS server module with a custom 8.0 kernel
Marius Strobl
marius at alchemy.franken.de
Fri Feb 19 21:12:49 UTC 2010
On Fri, Feb 19, 2010 at 07:42:56PM +0200, Kostik Belousov wrote:
> 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.
Correct, thanks for pointing this out.
Marius
More information about the freebsd-stable
mailing list