panic: improper umtx access

From: Peter Kostouros <kpeter_at_melbpc.org.au>
Date: Sat, 19 Jul 2003 20:12:42 +1000
Hi

I received a panic: improper umtx access from a system cvsup'ed about 8 
hours ago. It occurred when executing mcs (mono C# compiler). Note 
/etc/libmap.conf had libc_r.so* pointing to libthr.so* for mono/mcs. I 
am also running the SCHED_ULE scheduler.

I hope the attached backtrace is useful.

--

Regards

Peter

As always the organisation disavows knowledge of this email


Script started on Sat Jul 19 19:53:59 2003
eva# gdb -k -f kernel.debun g -f /var/crash/vmcore.18

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: improper umtx access
panic messages:
---
panic: improper umtx access

syncing disks, buffers remaining... 4819 4819 4817 4816 4816 4816 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 4815 
giving up on 2893 buffers
Uptime: 27m10s
acd0: timeout waiting for cmd=e7 s=01 e=04
acd0: flushing device failed
Dumping 1023 MB
ata0: resetting devices ..
done
 16 32[CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort]  48[CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort]  64[CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort] [CTRL-C to abort]  80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 336 352 368 384 400 416 432 448 464 480 496 512 528 544 560 576 592 608 624 640 656 672 688 704 720 736 752 768 784 800 816 832 848 864 880 896 912 928 944 960 976 992 1008
---
Reading symbols from /usr/obj/mnt/cvs/FreeBSD/usr/src/sys/EVA/modules/mnt/cvs/FreeBSD/usr/src/sys/modules/linux/linux.ko.debug...done.
Loaded symbols for /usr/obj/mnt/cvs/FreeBSD/usr/src/sys/EVA/modules/mnt/cvs/FreeBSD/usr/src/sys/modules/linux/linux.ko.debug
Reading symbols from /usr/obj/mnt/cvs/FreeBSD/usr/src/sys/EVA/modules/mnt/cvs/FreeBSD/usr/src/sys/modules/acpi/acpi.ko.debug...done.
Loaded symbols for /usr/obj/mnt/cvs/FreeBSD/usr/src/sys/EVA/modules/mnt/cvs/FreeBSD/usr/src/sys/modules/acpi/acpi.ko.debug
Reading symbols from /usr/obj/mnt/cvs/FreeBSD/usr/src/sys/EVA/modules/mnt/cvs/FreeBSD/usr/src/sys/modules/linprocfs/linprocfs.ko.debug...done.
Loaded symbols for /usr/obj/mnt/cvs/FreeBSD/usr/src/sys/EVA/modules/mnt/cvs/FreeBSD/usr/src/sys/modules/linprocfs/linprocfs.ko.debug
#0  doadump () at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_shutdown.c:240
/mnt/cvs/FreeBSD/usr/src/sys/kern/kern_shutdown.c:240:6807:beg:0xc023a65b
(kgdb) bt
#0  doadump () at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_shutdown.c:240
#1  0xc023ac91 in boot (howto=256) at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_shutdown.c:372
#2  0xc023b027 in panic () at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_shutdown.c:550
#3  0xc024bcd1 in _umtx_unlock (td=0xc32ae390, uap=0x0)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_umtx.c:306
#4  0xc03911e3 in syscall (frame=
      {tf_fs = 47, tf_es = 47, tf_ds = 47, tf_edi = 135333020, tf_esi = 135332992, tf_ebp = -1081159924, tf_isp = -530489996, tf_ebx = 674411260, tf_edx = 0, tf_ecx = 134524928, tf_eax = 435, tf_trapno = 12, tf_err = 2, tf_eip = 674719375, tf_cs = 31, tf_eflags = 2097734, tf_esp = -1081159968, tf_ss = 47}) at /mnt/cvs/FreeBSD/usr/src/sys/i386/i386/trap.c:1023
#5  0xc038157d in Xint0x80_syscall () at {standard input}:144
---Can't read userspace from dump, or kernel process---

(kgdb) up 3
#3  0xc024bcd1 in _umtx_unlock (td=0xc32ae390, uap=0x0)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_umtx.c:306
/mnt/cvs/FreeBSD/usr/src/sys/kern/kern_umtx.c:306:7814:beg:0xc024bcd1
(kgdb) l
301			}
302		} else {
303			UMTX_UNLOCK();
304			old = casuptr((intptr_t *)&umtx->u_owner,
305			    owner, UMTX_CONTESTED);
306			KASSERT(old != -1 && old != owner, ("improper umtx access"));
307		}
308	
309		if (old == -1)
310			return (EFAULT);
(kgdb) p old
$1 = -1020599407
(kgdb) p owner
$2 = -1020599407
(kgdb) p td
$3 = (struct thread *) 0xc32ae390
(kgdb) p uq
$4 = (struct umtx_q *) 0x0
(kgdb) l q
eva# exit

exit

Script done on Sat Jul 19 19:57:24 2003
Received on Sat Jul 19 2003 - 01:12:51 UTC

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