building world with debugging symbols [broken?]

Hans Petter Selasky hselasky at c2i.net
Tue Jun 22 20:11:17 UTC 2010


On Wednesday 31 March 2010 14:52:53 Giorgos Keramidas wrote:
> On Tue, 30 Mar 2010 15:10:58 -0400, John Baldwin <jhb at freebsd.org> wrote:
> > On Tuesday 30 March 2010 11:48:58 am Giorgos Keramidas wrote:
> >> +.It Va DEBUG_FLAGS
> >> +Defines a set of debugging flags that will be used to build all
> >> userland +binaries under
> >> +.Pa /usr/src .
> >> +When
> >> +.Va DEBUG_FLAGS
> >> +is defined, the
> >> +.Cm install
> >> +and
> >> +.Cm installworld
> >> +targets install binaries from the current
> >> +.Va MAKEOBJDIRPREFIX
> >> +without stripping too, so that debugging information is retained in the
> >> +installed binaries.
> >
> > I would drop the "too" and start 'so' on a new line (at least that is
> > my interpretation of the line-break rules we use for mdoc).  Other
> > than that I think this looks fine.
> 
> Fixed and committed in r205978. Thanks :)

Hi,

I've gotten several reports that cuse4bsd and other kernel modules built 
outside the kernel tree no longer load.

Any clues about what is wrong? Is this a compiler issue, or has it got to do 
with missing/wrong symbols?

For example one guy writes:

On Tue, 22 Jun 2010 19:11:09 +0200
Hans Petter Selasky <hselasky at freebsd.org> wrote:

> On Tuesday 22 June 2010 18:06:58 Ted Faber wrote:
> > FWIW, I'm seeing the same thing on 8.1-PRERELEASE csupped from
> > yesterday.  It's been going on foe a while, but I haven't been able
> > to find the bug.
> > 
> > (I was literally sitting down to type an e-mail about it when I saw
> > this thread.)
> > 
> > Same symptom: cuse4bsd loads but no device file appears in the /dev
> > I also don't see the printfs from cuse_kern_init show up in the
> > log.  It seems like something's changed in the kernel module load
> > path somehow. FWIW, the example in /usr/share/examples/kld/cdev/
> > doesn't work for me either.
> > 
> > I've attached the verbose boot.  Cuse4bsd is current from ports,
> > recompiled after the new kernel install:
> > 
> > $ pkg_info | grep cuse
> > cuse4bsd-kmod-0.1.11 Cuse4BSD character device loopback driver for
> >  userspace
> > 
> > Here's my loader.conf:
> > 
> > $ cat /boot/loader.conf
> > beastie_disable="YES"
> > acpi_ibm_load="YES"
> > snd_ich_load="YES"
> > cuse4bsd_load="YES"
> > 
> > The module is in the right place and seems to load:
> > $ ls -l /boot/modules/
> > total 18
> > -r-xr-xr-x  1 root  wheel  16505 Jun 21 19:02 cuse4bsd.ko
> > $ kldstat
> > Id Refs Address    Size     Name
> >  1   36 0xc0400000 bb8ea8   kernel
> >  2    1 0xc0fb9000 7224     snd_ich.ko
> >  3    2 0xc0fc1000 577a4    sound.ko
> >  4    1 0xc1019000 5244     acpi_ibm.ko
> >  5    1 0xc101f000 4610     cuse4bsd.ko
> >  6    1 0xc59c9000 8000     linprocfs.ko
> >  7    1 0xc5a1d000 26000    linux.ko
> >  8    1 0xc5b07000 11000    ipfw.ko
> >  9    1 0xc5b18000 d000     libalias.ko
> > 10    1 0xc5e2e000 2000     green_saver.ko
> > 11    1 0xc5f0d000 68000    radeon.ko
> > 12    1 0xc5f84000 14000    drm.ko
> > 
> > $ uname -a
> > FreeBSD praxis.lunabase.org 8.1-PRERELEASE FreeBSD 8.1-PRERELEASE
> > #38: Mon Jun 21 17:14:31 PDT 2010
> >  root at praxis.lunabase.org:/usr/obj/usr/src/sys/GENERIC  i386
> > 
> > I'm happy to try fixes or provide information.
> > 
> 
> Are you sure the kernel sources are matched with your kernel. I find
> this rather odd.
> 
laptop# svn info
Path: .
URL: svn://svn.freebsd.by/base/head
Repository Root: svn://svn.freebsd.by/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 209412
Node Kind: directory
Schedule: normal
Last Changed Author: delphij
Last Changed Rev: 209408
Last Changed Date: 2010-06-22 03:26:07 +0300 (Tue, 22 Jun 2010)

svn.freebsd.by - nearest svn mirror for me.

[username at svn]~%crontab -l|grep svn
0 */2 * * * /usr/local/bin/svnsync sync
file:///usr/local/repositories/freebsd/base/

%uname -a
FreeBSD laptop.domain 9.0-CURRENT FreeBSD 9.0-CURRENT #7
r209412M: Tue Jun 22 11:23:15 EEST 2010
root at laptop.domain:/usr/obj/usr/src/sys/b450  i386

laptop# pwd
/usr/src
laptop# svn st
laptop# 

> The Cuse4BSD printout is called from a SYSINIT. If sysinits don't
> work then something fundamental is wrong. Also check:
> 
> find /boot -name "cuse4bsd*"
> 

laptop# find /boot -name 'cuse*'
/boot/modules/cuse4bsd.ko
laptop#
>         printf("Cuse4BSD v%d.%d.%d @ /dev/cuse\n",
>             (CUSE_VERSION >> 16) & 0xFF, (CUSE_VERSION >> 8) & 0xFF,
>             (CUSE_VERSION >> 0) & 0xFF);
> }
> 
> SYSINIT(cuse_kern_init, SI_SUB_DEVFS, SI_ORDER_ANY, cuse_kern_init,
> 0);
> 

--HPS


More information about the freebsd-hackers mailing list