on 04/10/2010 03:49 David Wolfskill said the following: > db> bt 1 > Tracing pid 1 tid 100002 td 0xc91d6b40 > sched_switch(c91d6b40,0,104,191,a4bfdaac,...) at 0xc08cccec = sched_switch+0x3bc > mi_switch(104,0,c0cccb89,1f3,68,...) at 0xc08af3a0 = mi_switch+0x200 > sleepq_switch(c91d6b40,0,c0cccb89,28b,0,...) at 0xc08e4b7b = sleepq_switch+0x15f > sleepq_timedwait(c0e1fc24,69,c0cbe3e4,0,0,...) at 0xc08e4b7b = sleepq_timedwait+0x6b > _sleep(c0e1fc24,c0e1fc28,68,c0cbe3e4,c8,...) at 0xc08af892 = _sleep+0x342 > g_waitidle(c0e21950,0,c0cd59c7,a2,29e,...) at 0xc083ee90 = g_waitidle+0xc0 > vfs_mountroot(c0e21950,4,c0cc12a9,2a0,0,...) at 0xc09378c8 = vfs_mountroot+0x98 > start_init(0,c6d76d28,c0cc3520,349,c91d3d48,...) at 0xc085f2b5 = start_init+0x65 > fork_exit(c085f250,0,c6d76d28) at 0xc087c3a8 = fork_exit+0xb8 > fork_trampoline() at 0xc0bd5824 = fork_trampoline+0x8 > --- trap 0, eip = 0, esp = 0xc6d76d60, ebp = 0 --- > db> bt 2 > sched_switch(c922f000,0,104,191,d0c3a239,...) at 0xc08cccec = sched_switch+0x3bc > mi_switch(104,0,c0cccb89,1f3,4c,...) at 0xc08af3a0 = mi_switch+0x200 > sleepq_switch(c922f000,0,c0cccb89,268,0,...) at 0xc08e3f6f = sleepq_switch+0x15f > sleepq_wait(c959e7bc,4c,c0c644ec,0,0,...) at 0xc08e4c73 = sleepq_wait+0x63 > _sleep(c959e7bc,c9b31d74,4c,c0c644ec,0,...) at 0xc08af8c2 = _sleep+0x372 > cam_periph_getccb(c959e780,480,80246,c91462e0,c922f0a4,480) at 0xc04860af = cam_periph_getccb+0xaf > cdgetccb(c0dc7914,c0c64915,c922f000,c0e00998,12d2,...) at 0xc0499e08 = cdgetccb+0xd8 > cdprevent(14c,c6d8db64,c04883ca,c0e00998,0,...) at 0xc049a602 = cdprevent+0c52 > cdcheckmedia(c959e780,14c,c0c659d6,bc,0,...) at 0xc049a6a9 = cdcheckmedia+0x19 > cdopen(c953aa00,4,c0cbdd7f,76,0,...) at 0xc049bb2d = cdopen+0xed > g_disk_access(ca8c5e80,1,0,0,ca8c5ed8,...) at 0xc083ddcd = g_disk_access+0x11d > g_access(ca8c5680,1,0,0,ca8c5ed8,...) at 0xc084365e = g_access+0x23e > g_part_taste(c0dbcca0,ca8c5e80,0,228,ca8c5d80,...) at 0xc084a0a6 = g_part_taste+0xc6 > g_new_provider_event(ca8c5e80,0,c0cbe313,d9,c922f000,...) at 0xc0843316 = g_new_provider_event+0xb6 > g_run_events(c0e1fcd8,0,4c,c0ce99a5,64,...) at 0xc083f290 = g_run_events+0x3c0 > g_event_procbody(0,c6d8dd28,c0cc3520,349,c91d3550,...) at 0xc0840d8a = g_event_procbody+0x8a > fork_exit(c0840d00,0,c6d8dd28) at 0xc087c3a8 = fork_exit+0xb8 > fork_trampoline() at 0xc0bd5824 = fork_trampoline+0x8 > --- trap 0, eip = 0, esp = 0xc6d8dd60, ebp = 0 --- Interesting! So, init thread is blocked in vfs_mountroot()->g_waitidle() waiting for geom to complete probing cd device, but the latter is blocked in cam_periph_getccb() waiting for a ccb. Can you try to reproduce this again and examine other thread for anything interesting in geom/cam department? Thread named as "xpt_thrd" might be of particular interest. We urgently need geom and cam experts here :-) -- Andriy GaponReceived on Mon Oct 04 2010 - 05:45:04 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:08 UTC