Re: kern/68442: panic - acquiring duplicate lock of same type: "sleepq chain"

From: Brian Fundakowski Feldman (green_at_FreeBSD.org)
Date: 06/29/04

  • Next message: John Baldwin: "Re: kern/68442: panic - acquiring duplicate lock of same type: "sleepq chain""
    Date: Tue, 29 Jun 2004 14:49:46 -0400
    To: Daniel Lang <dl@leo.org>
    
    

    On Tue, Jun 29, 2004 at 08:35:57PM +0200, Daniel Lang wrote:
    > Hi Brian,
    >
    > Brian Fundakowski Feldman wrote on Tue, Jun 29, 2004 at 01:00:14PM -0400:
    > [..]
    > > You can find it out without using gdb, too. This will work for
    > > only main kernel symbols, but you can do something similar for
    > > KLDs. Say I want to find a symbol that's in the main kernel object:
    > >
    > > $ objdump -t /boot/kernel/kernel | ruby -ne 'fields = $_.split; if fields[3] == ".text" and fields[2] == "F" and 0xc048a800.between?(fields[0].hex, fields[0].hex + fields[4].hex) then puts $_ end'
    > > c048a7ac l F .text 0000006b cbb_removal
    > [..]
    >
    > Thanks for that hint, but Colin suggested to use "addr2line", which
    > produced some result. Maybe addr2line does a similar thing
    > as your objdump/ruby script:

    Yeah, as long as it's in the main kernel object and you have debug
    symbols.

    > So I have a line of code for the failing address:
    >
    > # addr2line -e kernel.debug 0xc053932b
    > /usr/src/sys/kern/subr_witness.c:898
    >
    > which is (in my kernel):
    >
    > [..]
    > lock1 = &(*lock_list)->ll_children[(*lock_list)->ll_count - 1];
    > [..]
    >
    > Well, I'm not sure if this is a big help. I doubt there is a bug
    > in witness code.

    Looks like a lock was cleared out/freed/whatever but not actually
    deinitialized first?

    > I'll cross-check with gdb to see if there is the same
    > result. Too bad I couldn't get a crashdump.
    >
    > (What hurts most, is, that in one occasion I had a ddb prompt
    > and could call doadump() successfully. But after reboot, damn
    > /var was full, so savecore could not write it to disk, argl!).

    You can make /var/crash a symlink to a directory with more space.

    -- 
    Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
      <> green@FreeBSD.org                               \  The Power to Serve! \
     Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\
    _______________________________________________
    freebsd-current@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-current
    To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
    

  • Next message: John Baldwin: "Re: kern/68442: panic - acquiring duplicate lock of same type: "sleepq chain""

    Relevant Pages

    • Re: kern/68442: panic - acquiring duplicate lock of same type: "sleepq chain"
      ... > only main kernel symbols, but you can do something similar for ... Say I want to find a symbol that's in the main kernel object: ... in witness code. ... I'll cross-check with gdb to see if there is the same ...
      (freebsd-current)
    • Re: Point of gpl-only modules (flame)
      ... Jimmy wrote: ... I've been trying to figure out what purpose the gpl-only code serves. ... Not a kernel problem. ... will resolve any kernel symbols for your module without ...
      (Linux-Kernel)
    • Re: linux how to make GPL compatible?
      ... >> That's just the kernel authors' way of telling you that they will ... >> ignore bug reports if you have that module loaded, ... There's a difference between accessing kernel symbols ... Printing on GNU/Linux? ...
      (comp.unix.programmer)
    • Re: [PATCH 12/20] x86_64: 64bit ACPI wakeup trampoline
      ... then then start accessing kernel symbols and restore processor context. ... wake page tables are on trampoline itself and they got to be at 4K ...
      (Linux-Kernel)
    • [2.6 patch] move frv docs one level up
      ... A summary of the configuration options particular to this architecture. ... A description of how to boot the kernel image and a summary of the kernel ... An example .gdbinit file for use with GDB. ... A description of the CPU clock scaling interface. ...
      (Linux-Kernel)