kldload pf failed on -current

John-Mark Gurney gurney_j at resnet.uoregon.edu
Mon Aug 9 15:53:07 PDT 2004


Max Laier wrote this message on Tue, Aug 10, 2004 at 00:40 +0200:
> > | On Monday 09 August 2004 18:54, Jiawei Ye wrote:
> > | > root at chihiro:/usr/src# kldload -v pf
> > | > kldload: can't load pf: No such file or directory
> > | > root at chihiro:/usr/src# kldload /boot/kernel/pf.ko
> > | > root at chihiro:/usr/src# /etc/rc.d/pf restart
> > | > Enabling pf.
> > | > pf enabled
> > | >
> > | > Somehow kldload cannot find pf.ko if no specific path is given. This
> > | > is a 2 hours old -current.
> > |
> > | Sounds like kldxref didn't finish it's job correctly. Try (as root):
> > | 	kldxref /boot/kernel /boot/modules
> > | and check the output of:
> > | 	kldxref -dv /boot/kernel
> > | for proper pf.ko entries. Please tell me if that did not help or if you
> > | see anything suspicious in the xref dump.
> >
> > I have this same problem with nfsclient and nfsserver being loaded. kldxref
> > doesn't fix the problem (for me). I figured I just updated at a bad time
> > since noone else had reported a similar thing occurring (it wasn't a big
> > drama for me to load those by hand).
> >
> > ACPI also doesn't autoload at boot.
> >
> > This was from a -current from August 8th.
> 
> Hmm ... I suspect it's this commit:
> > jmg         2004-08-06 15:06:06 UTC
> > 
> >   FreeBSD src repository
> > 
> >   Modified files:
> >     sys/boot/common      help.common 
> >     sys/boot/forth       loader.conf 
> >   Log:
> >   remove /boot/kernel from the default path..  There is already code that
> >   will prepend the current kernel booting...  This prevents a problem of
> >   loading /boot/kernel's modules when a different kernel has no modules,
> >   but you left your module_load="YES" in loader.conf...
> 
> Can you try to put back the line in question in /boot/loader.conf?
> 
> I have no idea whatsoever, but don't find anything else suspicious.

Ok, on the kernel boot, please send me:
sysctl kern.bootfile kern.module_path
ls /boot/<dir of kernel from kern.bootfile>

Make sure that you're current kernel is built to include modules.  We
no longer will load the default kernel's modules for other kernels.  So
if you boot kernel.test (or other kernel) that does not have pf.ko, you
can't load pf.ko anymore.

Note, I just tried to kldload pf on my system with the above change,
and at first it failed just like your case, but that was because I was
on a kernel w/o any kernel modules.  When I rebooted back to the
regular kernel, kldload pf worked perfectly... the unload didn't go
so well:
kldlopeabody# kldload pf
peabody# kldunload pf
panic: mutex if_clone loc

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."


More information about the freebsd-current mailing list