RE: panic: lockmgr: locking against myself (kern/64206)

From: Robin P. Blanchard <robin.blanchard_at_gactr.uga.edu>
Date: Mon, 17 May 2004 16:31:15 -0400
After some googling around, I found kern/64206, which indicates disabling
softupdates as a work-around for this problem...Disabled softupdates across
the board and wound up witht the following instead. I have dumps available...

# gdb -k /usr/obj/usr/src/sys/fbsd5.vpn/kernel.debug ./vmcore.8 
GNU gdb 5.2.1 (FreeBSD)
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-undermydesk-freebsd"...
panic: page fault
panic messages:
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
236             dumping++;
(kgdb) exec-file /boot/kernel/kernel
(kgdb) bt full
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
No locals.
#1  0xc04cdca6 in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:370
No locals.
#2  0xc04ce0dc in __panic () at /usr/src/sys/kern/kern_shutdown.c:548
        td = (struct thread *) 0xc26c5b00
        bootopt = 256
        newpanic = 0
        ap = 0xd25296d8 "Õ_at_fÀ\001"
        buf = "page fault", '\0' <repeats 245 times>
#3  0xc061e3cc in trap_fatal (frame=0xd252977c, eva=0) at
/usr/src/sys/i386/i386/trap.c:815
        code = 16
        type = 12
        ss = 16
        esp = 0
        softseg = {ssd_base = 0, ssd_limit = 1048575, ssd_type = 27, ssd_dpl
= 0, ssd_p = 1, ssd_xx = 0, 
  ssd_xx1 = 0, ssd_def32 = 1, ssd_gran = 1}
#4  0xc061e052 in trap_pfault (frame=0xd252977c, usermode=0, eva=3833069557)
    at /usr/src/sys/i386/i386/trap.c:733
        va = 3833065472
        vm = (struct vmspace *) 0x0
        map = 0x1
        rv = 1
        ftype = 1 '\001'
        td = (struct thread *) 0xc26c5b00
        p = (struct proc *) 0xc28ad000
#5  0xc061dc0d in trap (frame=
      {tf_fs = -766377960, tf_es = -1068236784, tf_ds = -766377968, tf_edi =
-1033086208, tf_esi = -1030546384, tf_ebp = 1847621996, tf_isp = -766339160,
tf_ebx = -1030546384, tf_edx = 0, tf_ecx = -1030546384, tf_eax = 0, tf_trapno
= 12, tf_err = 0, tf_eip = -461897739, tf_cs = 8, tf_eflags = 66178, tf_esp =
-1030546384, tf_ss = 65554}) at /usr/src/sys/i386/i386/trap.c:420
        td = (struct thread *) 0xc26c5b00
        p = (struct proc *) 0xc28ad000
        sticks = 3264420912
        i = 0
        ucode = 0
        type = 12
        code = 0
        eva = 3833069557
#6  0xe477fff5 in ?? ()
No symbol table info available.
---Can't read userspace from dump, or kernel process---



---------------------------------------
Robin P. Blanchard
Systems Integration Specialist
Georgia Center for Continuing Education
fon: 706.542.2404 < > fax: 706.542.6546
---------------------------------------
 

> -----Original Message-----
> From: owner-freebsd-current_at_freebsd.org 
> [mailto:owner-freebsd-current_at_freebsd.org] On Behalf Of Robin 
> P. Blanchard
> Sent: Monday, May 17, 2004 3:46 PM
> To: current_at_freebsd.org
> Subject: panic: lockmgr: locking against myself (was Panic on 
> very recent-CURRENT)
> 
> Updated to latest -CURRENT and am getting (what seems to be) 
> the same panic.
> Panics are being brought on by heavy building of various ports.
> 
> # gdb -k /usr/obj/usr/src/sys/fbsd5.vpn/kernel.debug 
> ./vmcore.7 GNU gdb 5.2.1 (FreeBSD) Copyright 2002 Free 
> Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public 
> License, and you are welcome to change it and/or distribute 
> copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show 
> warranty" for details.
> This GDB was configured as "i386-undermydesk-freebsd"...
> panic: lockmgr: locking against myself
> panic messages:
> ---
> panic: lockmgr: locking against myself
> at line 370 in file /usr/src/sys/kern/kern_lock.c cpuid = 0; 
> 
> syncing disks, buffers remaining... kernel trap 12 with 
> interrupts disabled
> 
> 
> Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00
> fault virtual address   = 0x24
> fault code              = supervisor read, page not present
> instruction pointer     = 0x8:0xc04f948e
> stack pointer           = 0x10:0xc9567c38
> frame pointer           = 0x10:0xc9567c58
> code segment            = base 0x0, limit 0xfffff, type 0x1b
>                         = DPL 0, pres 1, def32 1, gran 1
> processor eflags        = resume, IOPL = 0
> current process         = 28 (swi8: tty:sio clock)
> trap number             = 12
> panic: page fault
> at line 815 in file /usr/src/sys/i386/i386/trap.ccpuid = 0;
> Uptime: 29m7s
> Dumping 127 MB
> ...snip...
> #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
> 236             dumping++;
> (kgdb) bt full
> #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
> No locals.
> #1  0xc04cdca6 in boot (howto=260) at 
> /usr/src/sys/kern/kern_shutdown.c:370
> No locals.
> #2  0xc04ce0dc in __panic () at /usr/src/sys/kern/kern_shutdown.c:548
>         td = (struct thread *) 0xc0ec2000
>         bootopt = 260
>         newpanic = 0
>         ap = 0xc9567b84 "Õ_at_fÀ\001"
>         buf = "lockmgr: locking against myself", '\0' 
> <repeats 224 times>
> #3  0xc061e3cc in trap_fatal (frame=0xc9567bf8, eva=0) at
> /usr/src/sys/i386/i386/trap.c:815
>         code = 16
>         type = 12
>         ss = 16
>         esp = 0
>         softseg = {ssd_base = 0, ssd_limit = 1048575, 
> ssd_type = 27, ssd_dpl = 0, ssd_p = 1, ssd_xx = 0,
>   ssd_xx1 = 0, ssd_def32 = 1, ssd_gran = 1}
> #4  0xc061da23 in trap (frame=
>       {tf_fs = 24, tf_es = -1066860528, tf_ds = -1032060912, 
> tf_edi = 0, tf_esi = -1066762520, tf_ebp = -917078952, tf_isp 
> = -917079004, tf_ebx = -1030883264, tf_edx = -1058267136, 
> tf_ecx = -1058267136, tf_eax = 36, tf_trapno = 12, tf_err = 
> 0, tf_eip = -1068526450, tf_cs = 8, tf_eflags = 65683, tf_esp 
> = -1066802016, tf_ss = -1058229392}) at 
> /usr/src/sys/i386/i386/trap.c:250
>         td = (struct thread *) 0xc0ec2000
>         p = (struct proc *) 0xc0ecb370
>         sticks = 3228165280
>         i = 0
>         ucode = 0
>         type = 12
>         code = 0
>         eva = 36
> #5  0xc04f948e in propagate_priority (td=0xc28df840) at
> /usr/src/sys/kern/subr_turnstile.c:225
>         tc = (struct turnstile_chain *) 0xc06a7ee8
>         ts = (struct turnstile *) 0x0
>         td1 = (struct thread *) 0x0
>         pri = 36
> #6  0xc04f9d14 in turnstile_wait (ts=0xc0ec5080, 
> lock=0xc069c640, owner=0x0)
>     at /usr/src/sys/kern/subr_turnstile.c:505
>         tc = (struct turnstile_chain *) 0xc06a7dd0
>         td = (struct thread *) 0xc0ec2000
>         td1 = (struct thread *) 0xc069c640
> #7  0xc04c2ec5 in _mtx_lock_sleep (m=0xc069c640, opts=0, 
> file=0x0, line=0)
>     at /usr/src/sys/kern/kern_mutex.c:541
>         ts = (struct turnstile *) 0x0
>         td = (struct thread *) 0xc0ec2000
>         v = 0
> #8  0xc04e0482 in softclock (dummy=0x0) at
> /usr/src/sys/kern/kern_timeout.c:246
>         c_func = (void (*)(void *)) 0xc06007f0 <scrn_timer>
>         c_arg = (void *) 0xc06cae60
>         c_flags = 7
>         c = (struct callout *) 0x0
>         bucket = (struct callout_tailq *) 0xc4d87950
>         curticks = 174662
>         steps = 7
>         depth = 1
>         mpcalls = 0
>         gcalls = 0
>         wakeup_cookie = 7
> #9  0xc04b74f8 in ithread_loop (arg=0xc2572280) at
> /usr/src/sys/kern/kern_intr.c:574
>         ithd = (struct ithd *) 0xc2572280
>         ih = (struct intrhand *) 0xc0ec4240
>         td = (struct thread *) 0xc0ec2000
>         p = (struct proc *) 0xc0ecb370
>         count = 1
>         warned = 0
> #10 0xc04b6118 in fork_exit (callout=0xc04b72c0 
> <ithread_loop>, arg=0x0,
> frame=0x0)
>     at /usr/src/sys/kern/kern_fork.c:816
>         p = (struct proc *) 0xc0ecb370
>         td = (struct thread *) 0x0
> (kgdb) 
> 
> ---------------------------------------
> Robin P. Blanchard
> Systems Integration Specialist
> Georgia Center for Continuing Education
> fon: 706.542.2404 < > fax: 706.542.6546
> ---------------------------------------
>  
> 
> > -----Original Message-----
> > From: Robin P. Blanchard
> > Sent: Monday, May 17, 2004 11:40 AM
> > To: current_at_freebsd.org
> > Subject: Panic on very recent -CURRENT
> > 
> > Ident of kernel at:
> > http://people.gactr.uga.edu/robin/kernel_ident.txt
> > 
> > 
> > # gdb -k /usr/obj/usr/src/sys/fbsd5.vpn/kernel.debug
> > ./vmcore.5 GNU gdb 5.2.1 (FreeBSD) Copyright 2002 Free Software 
> > Foundation, Inc.
> > GDB is free software, covered by the GNU General Public 
> License, and 
> > you are welcome to change it and/or distribute copies of it under 
> > certain conditions.
> > Type "show copying" to see the conditions.
> > There is absolutely no warranty for GDB.  Type "show warranty" for 
> > details.
> > This GDB was configured as "i386-undermydesk-freebsd"...
> > panic: lockmgr: locking against myself panic messages:
> > ---
> > panic: lockmgr: locking against myself at line 370 in file 
> > /usr/src/sys/kern/kern_lock.c cpuid = 0;
> > 
> > syncing disks, buffers remaining... 1401 1401 1400 panic: 
> > bremfree: removing a buffer not on a queue at line 649 in file 
> > /usr/src/sys/kern/vfs_bio.ccpuid = 0;
> > Uptime: 3h52m23s
> > Dumping 127 MB
> >  16 32 48 64 80 96 112
> > 
> > #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
> > 236             dumping++;
> > (kgdb) exec-file /boot/kernel/kernel
> > (kgdb) bt full
> > #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
> > No locals.
> > #1  0xc04cdcc6 in boot (howto=260) at 
> > /usr/src/sys/kern/kern_shutdown.c:370
> > No locals.
> > #2  0xc04ce0fc in __panic () at 
> /usr/src/sys/kern/kern_shutdown.c:548
> >         td = (struct thread *) 0xc27dc6e0
> >         bootopt = 260
> >         newpanic = 0
> >         ap = 0xd255d834
> > "(\025ãÄ(\025ãÄTØUÒ»ÎQÀ(\025ãÄ(\025ãÄ(\025ãÄ\""
> >         buf = "lockmgr: locking against myself", '\0' 
> > <repeats 224 times>
> > #3  0xc051cfc1 in bremfreel (bp=0xc4e31528) at
> > /usr/src/sys/kern/vfs_bio.c:649
> >         old_qindex = 0
> > #4  0xc051cebb in bremfree (bp=0x0) at
> > /usr/src/sys/kern/vfs_bio.c:631 No locals.
> > #5  0xc052193e in getblk (vp=0xc26ea924, blkno=12000, size=2048, 
> > slpflag=0, slptimeo=0, flags=0)
> >     at /usr/src/sys/kern/vfs_bio.c:2472
> >         lockflags = 0
> >         bp = (struct buf *) 0xc4e31528
> > #6  0xc05b2b59 in ffs_sbupdate (mp=0xc2686300, waitfor=2) at
> > /usr/src/sys/ufs/ffs/ffs_vfsops.c:1482
> >         fs = (struct fs *) 0xc269d800
> >         bp = (struct buf *) 0x0
> >         blks = 1
> >         space = (void *) 0xc26cb000
> >         i = 0
> >         size = 2048
> >         error = 0
> >         allerror = 0
> > #7  0xc05b24c2 in ffs_sync (mp=0xc263d400, waitfor=2, 
> cred=0xc0eb9200, 
> > td=0xc0698ae0)
> >     at /usr/src/sys/ufs/ffs/ffs_vfsops.c:1207
> >         nvp = (struct vnode *) 0x0
> >         vp = (struct vnode *) 0xc26ea924
> >         devvp = (struct vnode *) 0xc26ea924
> >         ip = (struct inode *) 0x0
> >         ump = (struct ufsmount *) 0xc2686300
> >         fs = (struct fs *) 0xc269d800
> >         error = 0
> >         count = 0
> >         lockreq = 65554
> >         allerror = 0
> > #8  0xc05363de in sync (td=0xc0698ae0, uap=0x0) at
> > /usr/src/sys/kern/vfs_syscalls.c:136
> >         mp = (struct mount *) 0xc263d400
> >         nmp = (struct mount *) 0x0
> >         asyncflag = 0
> > #9  0xc04cd854 in boot (howto=256) at
> > /usr/src/sys/kern/kern_shutdown.c:302
> >         bp = (struct buf *) 0xc4dadd68
> >         iter = 0
> >         nbusy = 1400
> >         pbusy = 1400
> >         subiter = 50
> > #10 0xc04ce0fc in __panic () at 
> /usr/src/sys/kern/kern_shutdown.c:548
> >         td = (struct thread *) 0xc27dc6e0
> >         bootopt = 256
> >         newpanic = 0 
> >         ap = 0xd255da1c "\""
> >         buf = "lockmgr: locking against myself", '\0' 
> > <repeats 224 times>
> > #11 0xc04bfe65 in lockmgr (lkp=0xc0ece5c4, flags=2, 
> > interlkp=0x1000000, td=0xc27dc6e0)
> >     at /usr/src/sys/kern/kern_lock.c:439
> >         error = 0
> >         thr = (struct thread *) 0xc27dc6e0
> >         extflags = 16777216
> >         lockflags = 2
> > #12 0xc05cd70a in _vm_map_lock_read (map=0x0, file=0x0,
> > line=0) at machine/pcpu.h:156 No locals.
> > #13 0xc05d1508 in vm_map_lookup (var_map=0xd255db1c, vaddr=0,
> > fault_typea=1 '\001', out_entry=0xd255db20, 
> >     object=0x0, pindex=0x0, out_prot=0x0, wired=0xd255daf8) at 
> > /usr/src/sys/vm/vm_map.c:2867
> >         entry = 0x0
> >         map = 0xc0ece588
> >         prot = 0 '\0'
> >         fault_type = 1 '\001'
> > #14 0xc05c716f in vm_fault (map=0xc0ece588, vaddr=0,
> > fault_type=1 '\001', fault_flags=0)
> >     at /usr/src/sys/vm/vm_fault.c:232
> >         prot = 192 'À'
> >         is_first_object_locked = -766125352
> >         result = 0
> >         growstack = 1
> >         wired = -766125288
> >         map_generation = -1033337320
> >         next_object = 0x0
> >         marray = {0x0, 0x0, 0xc0d30820, 0xc0532e4c, 0xc2688618, 
> > 0x10002, 0xc8989070, 0xc27ccf00, 0x8051000,
> >   0xc0e75af8, 0xc0ece628, 0xd255db6c, 0xc06164dd, 0xc0c381c0, 0x0, 
> > 0x246}
> >         hardfault = 0
> >         faultcount = -1058216568
> >         fs = {m = 0xd255db34, object = 0xc05402b0, pindex = 
> > 14014576280821825536, first_m = 0xc0e6edd8,
> >   first_object = 0xc2688618, first_pindex = 
> 14014576280821825536, map 
> > = 0xc0ece588, entry = 0xc0dde568,
> >   lookup_still_valid = 0, vp = 0xd255db34}
> > #15 0xc061a995 in trap_pfault (frame=0xd255dbf4, usermode=0,
> > eva=16) at /usr/src/sys/i386/i386/trap.c:710
> >         va = 0
> >         vm = (struct vmspace *) 0x0
> >         map = 0xc0ece588
> >         rv = -1058216568
> >         ftype = 1 '\001'
> >         td = (struct thread *) 0xc27dc6e0
> >         p = (struct proc *) 0xc27dd1b8
> > #16 0xc061a65d in trap (frame=
> >       {tf_fs = 672530456, tf_es = 16, tf_ds = 16, tf_edi = 
> > -1058216568, tf_esi = -1032160388, tf_ebp = -766124984, tf_isp = 
> > -766125024, tf_ebx = 0, tf_edx = 0, tf_ecx = 0, tf_eax = 0, 
> tf_trapno 
> > = 12, tf_err = 0, tf_eip = -1067654093, tf_cs = 8, 
> tf_eflags = 66118, 
> > tf_esp = 3, tf_ss = 0}) at /usr/src/sys/i386/i386/trap.c:420
> >         td = (struct thread *) 0xc27dc6e0
> >         p = (struct proc *) 0xc27dd1b8
> >         sticks = 3528842444
> >         i = 0
> >         ucode = 0
> >         type = 12
> >         code = 0
> >         eva = 16
> > #17 0xc05ce433 in vm_map_simplify_entry (map=0xc0ece588,
> > entry=0xc27a7b7c) at /usr/src/sys/vm/vm_map.c:1041
> >         next = 0x0
> >         prev = 0x0
> >         prevsize = 0
> >         esize = 0
> > #18 0xc05ce064 in vm_map_insert (map=0xc27a7b7c, object=0xc0ece588, 
> > offset=0, start=134553600,
> >     end=134557696, prot=7 '\a', max=7 '\a', cow=0) at
> > /usr/src/sys/vm/vm_map.c:815
> >         new_entry = 0x0
> >         prev_entry = 0xc27a7b7c
> >         temp_entry = 0xc27a7b7c
> >         protoeflags = 0
> > #19 0xc05dd536 in obreak (td=0x0, uap=0x0) at
> > /usr/src/sys/vm/vm_unix.c:119
> >         vm = (struct vmspace *) 0xc0ece588
> >         new = 0
> >         old = 134553600
> >         base = 0
> >         datalim = -4545005548382553220
> >         vmemlim = 9223372036854775807
> >         rv = 0
> >         error = 0
> >         do_map_wirefuture = 0
> > #20 0xc061b200 in syscall (frame=
> >       {tf_fs = 47, tf_es = 47, tf_ds = 47, tf_edi = 
> 134557696, tf_esi 
> > = 134553600, tf_ebp = -1077942680, tf_isp = -766124684, tf_ebx = 
> > 672459276, tf_edx = 672449032, tf_ecx = 672449028, tf_eax = 17, 
> > tf_trapno = 12, tf_err = 2, tf_eip = 671988075, tf_cs = 31, 
> tf_eflags 
> > = 643, tf_esp = -1077942708, tf_ss = 47})
> >     at /usr/src/sys/i386/i386/trap.c:1004
> >         params = 0xbfbfe650---Can't read userspace from dump, or 
> > kernel process---
> > 
> > (kgdb)
> > 
> > 
> > ---------------------------------------
> > Robin P. Blanchard
> > Systems Integration Specialist
> > Georgia Center for Continuing Education
> > fon: 706.542.2404 < > fax: 706.542.6546
> > ---------------------------------------
> > 
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list 
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to 
> "freebsd-current-unsubscribe_at_freebsd.org"
> 
Received on Mon May 17 2004 - 11:31:18 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:54 UTC