Subject: unionfs panic
To: current-users <current-users@NetBSD.ORG>
From: Hauke Fath <hauke@Espresso.Rhein-Neckar.DE>
List: current-users
Date: 03/19/1998 01:17:24
>src/sys/miscfs/union/union_vnops.c
> (marc - Tue Mar 17 00:36:58 PST 1998)
> mounting a union causes VOP_WHITEOUT to be called on the upper root
> vn, with a 0 component. If the upper fs was a unionfs,
> union_whiteout() would deref compnent to get a struct proc, and panic.
> struct proc was only being passed to FIXUP, which never used it. It
> turns out this happened a lot. I ripped most of the unneeded code
> out, and left in the few places that really did need the proc handle.
Wrt. the recent unionfs changes, a kernel built from today's sup says
Mar 19 01:12:38 q700 shutdown: halt by hauke:
Mar 19 01:12:41 q700 syslogd: exiting on signal 15
syncing disks... 3 3 done
unmounting /usr/src (<above>:/var/obj)...
panic: lockmgr: using decommissioned lock
Stopped at _Debugger+0x6: unlk a6
db> t
_Debugger(0,541134,809d04,220d0,21f32) + 6
_panic(21f32,10002,5cac00,543380,2) + 50
_lockmgr(541134,10002,54325c,809d38,45772) + 42
_ufs_lock(809d2c) + 1c
_vn_lock(543200,10002) + 40
_vrele(543200) + 72
_union_freevp(543080,809dbc,40762,809d9c,5cac00) + 4c
_union_reclaim(809d9c) + c
_vclean(543080,8,5cac00) + 11c
_vgonel(543080,5cac00) + 3a
_vflush(5b1000,593f80,2) + 72
_union_unmount(5b1000,80000,5cac00) + 38
_dounmount(5b1000,80000,5cac00) + a8
_vfs_unmountall(0,11f,d0,0,b) + 52
_vfs_shutdown(809f44,28ff0,8,0,5cac00) + cc
_cpu_reboot(8,0,5cac00,8,809f88) + 4c
_sys_reboot(5cac00,809f88,809f80) + 56
_syscall(d0) + 13e
_trap0() + e
db> ps
PID PPID PGRP UID S FLAGS COMMAND WAIT
>518 1 517 100 2 0x4006 halt
2 0 0 0 3 0x204 pagedaemon paged
1 0 1 0 3 0x4084 init wait
0 -1 0 0 2 0x204 swapper
db>
??? Never saw that one before. Not quite fixed...
hauke
--
"It's never straight up and down" (DEVO)