Patches to get Arla running on FreeBSD 8-CURRENT

Alec Kloss alec-dated-1217903464.fbea22 at SetFilePointer.com
Thu Jul 31 04:31:04 CEST 2008


I've rebuilt everything and now there's a panic trying to mount
nnpfs:

(kgdb) bt
#0  doadump () at pcpu.h:196
#1  0xc079431e in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:418
#2  0xc07945e3 in panic (fmt=Variable "fmt" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:572
#3  0xc0496107 in db_panic (addr=Could not find the frame base for "db_panic".
) at /usr/src/sys/ddb/db_command.c:446
#4  0xc0496b38 in db_command (last_cmdp=0xc0c5e9f0, cmd_table=0x0, dopager=1)
    at /usr/src/sys/ddb/db_command.c:413
#5  0xc0496c6a in db_command_loop () at /usr/src/sys/ddb/db_command.c:466
#6  0xc049845d in db_trap (type=12, code=0) at /usr/src/sys/ddb/db_main.c:228
#7  0xc07c1746 in kdb_trap (type=12, code=0, tf=0xc89b682c)
    at /usr/src/sys/kern/subr_kdb.c:534
#8  0xc0ab8e6f in trap_fatal (frame=0xc89b682c, eva=0) at /usr/src/sys/i386/i386/trap.c:925
#9  0xc0ab90a3 in trap_pfault (frame=0xc89b682c, usermode=0, eva=0)
    at /usr/src/sys/i386/i386/trap.c:847
#10 0xc0ab9aa8 in trap (frame=0xc89b682c) at /usr/src/sys/i386/i386/trap.c:525
#11 0xc0a9da9b in calltrap () at /usr/src/sys/i386/i386/exception.s:165
#12 0xc08116be in vfs_filteropt (opts=0x0, legal=0xc2066418)
    at /usr/src/sys/kern/vfs_mount.c:1818
#13 0xc205d2d2 in nnpfs_mount_freebsd () from /usr/local/arla/bin/nnpfs.ko
#14 0xc0813711 in vfs_donmount (td=0xc1ebd690, fsflags=0, fsoptions=0xc89b6c18)
    at /usr/src/sys/kern/vfs_mount.c:1010
#15 0xc0813d78 in kernel_mount (ma=0xc1ddaa60, flags=0) at /usr/src/sys/kern/vfs_mount.c:2291
#16 0xc205d47d in nnpfs_cmount_freebsd () from /usr/local/arla/bin/nnpfs.ko
#17 0xc0811c67 in mount (td=0xc1ebd690, uap=0xc89b6cf8) at /usr/src/sys/kern/vfs_mount.c:816
#18 0xc0ab9384 in syscall (frame=0xc89b6d38) at /usr/src/sys/i386/i386/trap.c:1081
#19 0xc0a9db00 in Xint0x80_syscall () at /usr/src/sys/i386/i386/exception.s:261
#20 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb)

I can confirm using kgdb on the crash dump that mp->mnt_optnew in
vfs_filteropt is indeed NULL, but so far I can't figure out why.
Going into vfs_donmount (frame 14) shows that optlist is non-null.
I don't quite see why there's no stack frame for the call to
vfs_domount()---maybe because it's in the same module it's
suppressed?--- but regardless, I don't see any way to get to
calling VFS_MOUNT without mp->mnt_optnew being set to fsdata, which 
is the same pointer as optlist is in vfs_donmount().  

Help?  Am I missing something obvious?  Interactive kgdb doesn't show
a separate stack frame for vfs_domount() either, so I can't
meaningfully inspect any variables there either...

-- 
Alec Kloss  alec at SetFilePointer.com   IM: angryspamhater at yahoo.com
PGP key at http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xA241980E
"No Bunny!" -- Simon, from Frisky Dingo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.stacken.kth.se/pipermail/arla-drinkers/attachments/20080731/38465cda/attachment.bin


More information about the Arla-drinkers mailing list