From owner-freebsd-current@FreeBSD.ORG Sun Jun 5 15:48:04 2005 Return-Path: X-Original-To: current@FreeBSD.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8BC1716A41C for ; Sun, 5 Jun 2005 15:48:04 +0000 (GMT) (envelope-from nork@FreeBSD.org) Received: from sakura.ninth-nine.com (sakura.ninth-nine.com [219.127.74.120]) by mx1.FreeBSD.org (Postfix) with ESMTP id DCE6343D1F for ; Sun, 5 Jun 2005 15:48:03 +0000 (GMT) (envelope-from nork@FreeBSD.org) Received: from pelsia.ninth-nine.com (pelsia.ninth-nine.com [219.127.74.123]) (authenticated bits=0) by sakura.ninth-nine.com (8.13.3/8.13.1/NinthNine) with ESMTP id j55FluRV073876; Mon, 6 Jun 2005 00:47:57 +0900 (JST) (envelope-from nork@FreeBSD.org) Date: Mon, 6 Jun 2005 00:47:56 +0900 (JST) Message-Id: <200506051547.j55FluRV073876@sakura.ninth-nine.com> From: Norikatsu Shigemura To: jroberson@chesapeake.net In-Reply-To: <200506051336.j55DacJJ070482@sakura.ninth-nine.com> References: <20050604052429.T8209@mail.chesapeake.net> <200506051336.j55DacJJ070482@sakura.ninth-nine.com> X-Mailer: Sylpheed version 1.9.12 (GTK+ 2.6.7; i386-portbld-freebsd6.0) Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit X-Greylist: Sender succeded SMTP AUTH authentication, not delayed by milter-greylist-1.6 (sakura.ninth-nine.com [219.127.74.121]); Mon, 06 Jun 2005 00:47:58 +0900 (JST) Cc: current@FreeBSD.org Subject: Re: ULE Status. X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Jun 2005 15:48:04 -0000 On Sun, 5 Jun 2005 22:36:38 +0900 (JST) Norikatsu Shigemura wrote: > > I just fixed what should be the last ULE+KSE+PREEMPTION bug. Please let > > me know if you run into any problems with it, preferably with a seperate > > mail to me as I'm more likely to see this than one which is cc'd to > > current@. > Wow! that's cool! > I tried to 'nice -20 make -j1024 buildworld' with > SCHED_ULE and PREEMPTION kernel options. I contacted a > panic like following, and sorry, I cannot get a crash dump. I got a crash dump! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [thread pid 31 tid 100026 ] Stopped at sched_add+0xc: movl 0x150(%eax),%ebx db> where Tracing pid 31 tid 100026 td 0xc2c58320 sched_add(0,0,c0480b11,c3a3f4b0,10) at sched_add+0xc setrunqueue(c3a3f4b0,0,c3a3f604,c3a3f4b0,c3a3f4b0) at setrunqueue+0x178 adjustrunqueue(c3a3f4b0,10,10,10c58320,c2c58320) at adjustrunqueue+0xd1 sched_thread_priority(c3a3f4b0,10,e5db0c78,c04c7f9e,c3a3f4b0) at sched_thread_priority+0xb4 sched_lend_prio(c3a3f4b0,10,c2c50008,28,c2c50028) at sched_lend_prio+0x1d propagate_priority(c2c58320,e5db0ca8,c04c849d,c2e14274,0) at propagate_priority+0x4e turnstile_wait(c06d0b60,c3a3f4b0,c2d022c0,4,c2c59c00) at turnstile_wait+0x34d _mtx_lock_sleep(c06d0b60,c2c58320,0,0,0) at _mtx_lock_sleep+0x111 ithread_loop(c2c59c00,e5db0d38,fefffefe,fbffeffd,ffffefff) at ithread_loop+0x19c fork_exit(c0480c50,c2c59c00,e5db0d38) at fork_exit+0x80 fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xe5db0d6c, ebp = 0 --- db> show pcpu 0 cpuid = 0 curthread = 0xc33a5000: pid 834 "Xorg" curpcb = 0xf83cad90 fpcurthread = none idlethread = 0xc2c097d0: pid 12 "idle: cpu0" APIC ID = 0 currentldt = 0x50 db> show pcpu 1 cpuid = 1 curthread = 0xc2c58320: pid 31 "irq19: fwohci0 fxp+" curpcb = 0xe5db0d90 fpcurthread = none idlethread = 0xc2c09640: pid 11 "idle: cpu1" APIC ID = 1 currentldt = 0x50 db> call doadump() Dumping 1535 MB [CTRL-C to abort] 16 32 48 64 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 1024 1040 1056 1072 1088 1104 1120 1136 1152 1168 1184 1200 1216 1232 1248 1264 1280 1296 1312 1328 1344 1360 1376 1392 1408 1424 1440 1456 1472 1488 1504 1520 Dump complete 0xf db> reset cpu_reset: Restarting BSP cpu_reset_proxy: Stopped CPU 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # kgdb -c /var/crash/vmcore.53 /boot/kernel/kernel.debug [GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"] GNU gdb 6.1.1 [FreeBSD] Copyright 2004 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-marcel-freebsd". #0 doadump () at pcpu.h:165 165 __asm __volatile("movl %%fs:0,%0" : "=r" (td)); (kgdb) where #0 doadump () at pcpu.h:165 #1 0xc0430b45 in db_fncall (dummy1=-438629904, dummy2=0, dummy3=115200, dummy4=0xe5db09d4 "@qn潜\003") at /usr/src/sys/ddb/db_command.c:531 #2 0xc04308d2 in db_command (last_cmdp=0xc068afc4, cmd_table=0x0, aux_cmd_tablep=0xc0661264, aux_cmd_tablep_end=0xc0661268) at /usr/src/sys/ddb/db_command.c:349 #3 0xc04309e5 in db_command_loop () at /usr/src/sys/ddb/db_command.c:455 #4 0xc0432b65 in db_trap (type=12, code=0) at /usr/src/sys/ddb/db_main.c:221 #5 0xc04bdb5e in kdb_trap (type=0, code=0, tf=0xe5db0b70) at /usr/src/sys/kern/subr_kdb.c:471 #6 0xc0625296 in trap_fatal (frame=0xe5db0b70, eva=0) at /usr/src/sys/i386/i386/trap.c:826 #7 0xc0624894 in trap (frame= {tf_fs = 8, tf_es = -438632408, tf_ds = -438632408, tf_edi = -1012665168, tf_esi = -1019570208, tf_ebp = -438629412, tf_isp = -438629476, tf_ebx = -1012665168, tf_edx = 0, tf_ecx = -1012225728, tf_eax = 0, tf_trapno = 12, tf_err = 0, tf_eip = -1068810564, tf_cs = 32, tf_eflags = 65666, tf_esp = -1027539100, tf_ss = 1}) at /usr/src/sys/i386/i386/trap.c:269 #8 0xc06104da in calltrap () at /usr/src/sys/i386/i386/exception.s:139 #9 0x00000008 in ?? () #10 0xe5db0028 in ?? () #11 0xe5db0028 in ?? () #12 0xc3a3f4b0 in ?? () #13 0xc33a97e0 in ?? () #14 0xe5db0bdc in ?? () #15 0xe5db0b9c in ?? () #16 0xc3a3f4b0 in ?? () #17 0x00000000 in ?? () #18 0xc3aaa940 in ?? () #19 0x00000000 in ?? () #20 0x0000000c in ?? () #21 0x00000000 in ?? () #22 0xc04b3ebc in sched_add (td=0x0, flags=0) at /usr/src/sys/kern/sched_ule.c:1745 #23 0xc04b4988 in setrunqueue (td=0xc3a3f4b0, flags=0) at kern_switch.c:564 #24 0xc04b46a1 in adjustrunqueue (td=0xc3a3f4b0, newpri=16) at kern_switch.c:325 #25 0xc04b3354 in sched_thread_priority (td=0xc3a3f4b0, prio=16 '\020') at /usr/src/sys/kern/sched_ule.c:1235 #26 0xc04b339d in sched_lend_prio (td=0x0, prio=16 '\020') at /usr/src/sys/kern/sched_ule.c:1250 #27 0xc04c7f9e in propagate_priority (td=0xc3a3f4b0) at /usr/src/sys/kern/subr_turnstile.c:204 #28 0xc04c8a7d in turnstile_wait (lock=0xc06d0b60, owner=0x0) at /usr/src/sys/kern/subr_turnstile.c:629 #29 0xc0490351 in _mtx_lock_sleep (m=0xc06d0b60, td=0xc2c58320, opts=0, file=0x0, line=0) at /usr/src/sys/kern/kern_mutex.c:550 #30 0xc0480dec in ithread_loop (arg=0xc2c59c00) at /usr/src/sys/kern/kern_intr.c:545 #31 0xc047fa60 in fork_exit (callout=0xc0480c50 , arg=0x0, frame=0x0) at /usr/src/sys/kern/kern_fork.c:789 #32 0xc061053c in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:208 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -