NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/41192: wapbl diagnostic panic during cgdconfig



>Number:         41192
>Category:       kern
>Synopsis:       wapbl diagnostic panic during cgdconfig
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Apr 12 17:45:01 +0000 2009
>Originator:     Alan Barrett
>Release:        NetBSD 5.99.10
>Organization:
Not much
>Environment:
System: NetBSD 5.99.10 i386
Architecture: i386
Machine: i386
>Description:
    I encountered the following panic whie booting a recent -current
    i386 DIAGNOSTIC+LOCKDEBUG kernel.  The panic appears to be just
    as a cgdconfig command is exiting.  The message is:

    panic: kernel diagnostic assertion "rw_lock_held(&wl->wl_rwlock)"
    failed: file ".../kern/vfs_wapbl.c", line 1537

    (It's been several months since last I last tried a
    DIAGNOSTIC+LOCKDEBUG kernel, so I don't know how old this bug
    is.)
        
>How-To-Repeat:
    Boot a new kernel.  It's a custom kernel, based on i386 MONOLITHIC,
    with LOCKDEBUG and DIAGNOSTIC options.

    See the highly customised /etc/rc successfully mount the root file
    system (ffs+wapbl on wd0a), and then prompt for the password for the
    cgd file system that contains most of the data:

        + cgdconfig /dev/cgd1d /dev/wd0e /etc/cgd/wd0e
        /dev/wd0e's passphrase: <enter passphrase here>
        cgd1: unable to open device, error = 16
        panic: kernel diagnostic assertion "rw_lock_held(&wl->wl_rwlock)"
        failed: file ".../kern/vfs_wapbl.c", line 1537

        The "unable to open device" message is normal (a non-crashing
        kernel also prints it, and it doesn't usually interfere with the
        ability to use the cgd device).

        The backtrace looks like this:

        stopped in pid 11.1 (cgdconfig) ...
        db{0}> bt
        breakpoint ...
        panic ...
        __kernassert ...
        wapbl_jlock_assert ...
        wapbl_add_buf ...
        bdwrite ...
        ffs_update ...
        ffs_full_sync ..
        ffs_fsync ...
        VOP_FSYNC ...
        vinvalbuf ...
        spec_close ...
        VOP_CLOSE ...
        vn_close ...
        vn_closefile ...
        closef ...
        fd_close ...
        syscall ...

>Fix:
    Unknown



Home | Main Index | Thread Index | Old Index