Re: misc/compat6x port no longer sufficient for DRI under head?

From: David Wolfskill <david_at_catwhisker.org>
Date: Thu, 17 Sep 2009 17:12:32 -0700
On Thu, Sep 17, 2009 at 01:31:04PM -0700, Julian Elischer wrote:
> ...
> set flags for console to be serial,
> when frozen, try CTL_ALT_ESC on keyboard to try drop to debugger
> CR ~ ^B (I think that is the serial break to debugger, check
> the options..)
> 
> serial console is a lot more useful a diag than just serial port..

Ah, right.  I rebuilt the kernel -- this time, including the
BREAK_TO_DEBUGGER option, so acessing ddb works just a wee bit better.
[Sorry....]

After doing a "forcestart" for dbus & hald, the system locked again;
forcing a BREAK signal over serial dropped ot ddb.  Here's the
backtrace:

d254# sh /usr/local/etc/rc.d/dbus forcestart; echo $?; uptime
Starting dbus.
0
 5:02PM  up 2 mins, 1 user, load averages: 0.85, 0.44, 0.19
d254# ^dbus^hald
sh /usr/local/etc/rc.d/hald forcestart ; echo $? ; uptime
Starting hald.
0
 5:02PM  up 2 mins, 1 user, load averages: 0.78, 0.44, 0.19
d254# vgapci0: Reserved 0x8000000 bytes for rid 0x10 type 3 at 0xe0000000
~KDB: enter: Line break on console
[thread pid 0 tid 100046 ]
Stopped at      0xc089168a = kdb_enter+0x3a:    movl    $0,0xc0dab674 = kdb_why
db> bt
Tracing pid 0 tid 100046 td 0xc6183000
kdb_enter(c0c01f92,c0c3ae45,c0870207,c5cdc580,c5cdc558,...) at 0xc089168a = kdb_enter+0x3a
uart_intr(c5cdc500,c6183000,c0d76b10,c5a6e280,4,...) at 0xc0775e92 = uart_intr+0x122
intr_event_handle(c5a6e280,c3f78c20,c083d0aa,c6183000,4,...) at 0xc083d04c = intr_event_handle+0x5c
intr_execute_handlers(c0d76b10,c3f78c20,c6183000,c62c2780,c3f78c64,...) at 0xc0b7e379 = intr_execute_handlers+0x49
atpic_handle_intr(4,c3f78c20) at 0xc0b9a36c = atpic_handle_intr+0x7c
Xatpic_intr4() at 0xc0b793c1 = Xatpic_intr4+0x21
--- interrupt, eip = 0xc0b8609b, esp = 0xc3f78c60, ebp = 0xc3f78c64 ---
spinlock_exit(c0dabf4c,4,c0c4ee4c,109) at 0xc0b8609b = spinlock_exit+0x2b
_mtx_unlock_spin_flags(c0dabf4c,0,c0c54b40,10c,c3f78cd4,...) at 0xc0853554 = _mtx_unlock_spin_flags+0xf4
sleepq_release(c62c2780,c62c2798,c0c70802,0,0,...) at 0xc089b0f9 = sleepq_release+0x39
msleep_spin(c62c2780,c62c2798,c0c70802,0,c0c4ee4c,...) at 0xc086c998 = msleep_spin+0x1c8
taskqueue_thread_loop(c0f07e88,c3f78d38,c0c4bbac,343,c0d97f60,...) at 0xc089dc24 = taskqueue_thread_loop+0x94
fork_exit(c089db90,c0f07e88,c3f78d38) at 0xc08398c8 = fork_exit+0xb8
fork_trampoline() at 0xc0b792d0 = fork_trampoline+0x8
--- trap 0, eip = 0, esp = 0xc3f78d70, ebp = 0 ---
db> 

A few more things, then I think it might make more sense for further
traffic to be off-list for a while:

db> ps
  pid  ppid  pgrp   uid   state   wmesg     wchan    cmd
 2431  2427  2427     0  S       select   0xc690cba4 hald-runner
 2427  2422  2427     0  Rs                          hald
 2422     1  2405     0  S+      select   0xc64af9a4 hald
 2403     1  2403   556  Ss      select   0xc64af8a4 dbus-daemon
 2380  2379  2380     0  R+                          csh
 2379     1  2379     0  Ss+     wait     0xc64e57f8 login
 2378     1  2378     0  Ss+     ttyin    0xc6179270 getty
 2377     1  2377     0  Ss+     ttyin    0xc61c1270 getty
 2376     1  2376     0  Ss+     ttyin    0xc61c0a70 getty
 2375     1  2375     0  Ss+     ttyin    0xc61bf270 getty
 2374     1  2374     0  Ss+     ttyin    0xc61c3a70 getty
 2373     1  2373     0  Ss+     ttyin    0xc61c0270 getty
 2372     1  2372     0  Ss+     ttyin    0xc6177270 getty
 2371     1  2371     0  Ss+     ttyin    0xc6176270 getty
 2300     1  2300     0  Rs                          cron
 2293     1  2293    25  Ss      pause    0xc6b14058 sendmail
 2289     1  2289     0  Rs                          sendmail
 2288  2253  2253    80  S       accept   0xc66bf84a httpd
 2287  2253  2253    80  S       accept   0xc66bf84a httpd
db>  [Not complete; I terminated the list at the one page]

db> bt 2427
Tracing pid 2427 tid 100097 td 0xc6b4faf0
sched_switch(c6b4faf0,0,602,18c,52e886a4,...) at 0xc0885086 = sched_switch+0x406
mi_switch(602,0,c0c50e68,cf,0,...) at 0xc086c120 = mi_switch+0x200
critical_exit(c0d76a60,c6b4faf0,c0d76a60,c5a6e880,0,...) at 0xc086a4b8 = critical_exit+0xa8
intr_event_handle(c5a6e880,df628764,b395eb11,5050500,0,...) at 0xc083d0aa = intr_event_handle+0xba
intr_execute_handlers(c0d76a60,df628764,5050500,5050505,df62884c,...) at 0xc0b7e379 = intr_execute_handlers+0x49
atpic_handle_intr(0,df628764) at 0xc0b9a36c = atpic_handle_intr+0x7c
Xatpic_intr0() at 0xc0b79301 = Xatpic_intr0+0x21
--- interrupt, eip = 0xc0b79f83, esp = 0xdf6287a4, ebp = 0xdf62884c ---
i686_mrstoreone(c0f4bdcc,246,c59c4790,c6b4fb94,c0c7bb42,...) at 0xc0b79f83 = i686_mrstoreone+0x1c3
smp_rendezvous_cpus(1,0,c0b79dc0,0,c0f4bdcc,...) at 0xc089ca97 = smp_rendezvous_cpus+0x37
smp_rendezvous(0,c0b79dc0,0,c0f4bdcc,c6b5576c,...) at 0xc089cc2f = smp_rendezvous+0x2f
i686_mrset(c0f4bdcc,df62890c,df628908,df628930,c1238ee5,...) at 0xc0b7a9e0 = i686_mrset+0x430
mem_range_attr_set(df62890c,df628908,8,0,e0000000,...) at 0xc0b63ded = mem_range_attr_set+0x2d
drm_mtrr_add(e0000000,8000000,2,90,c5b67c00,...) at 0xc1238ee5 = drm_mtrr_add+0x65
drm_addmap(c5b67c00,e0000000,8000000,0,10,...) at 0xc12329d3 = drm_addmap+0x473
radeon_driver_firstopen(c5b67c00,0,2000,2,20,...) at 0xc11d38ae = radeon_driver_firstopen+0x6e
drm_open(c5c86900,1,2000,c6b4faf0,df628a00,...) at 0xc1235d1f = drm_open+0x16f
devfs_open(df628abc,2d,df628ba4,0,df628ae4,...) at 0xc07e6f48 = devfs_open+0xe8
VOP_OPEN_APV(c0d39260,df628abc,100,57d,0,...) at 0xc0ba3915 = VOP_OPEN_APV+0xa5
vn_open_cred(df628ba4,df628c5c,0,0,c6b17c80,...) at 0xc090055f = vn_open_cred+0x4bf
vn_open(df628ba4,df628c5c,0,c6ac13f0,df628bb8,...) at 0xc090068b = vn_open+0x3b
kern_openat(c6b4faf0,ffffff9c,809ff00,0,1,...) at 0xc08fe4cf = kern_openat+0x11f
kern_open(c6b4faf0,809ff00,0,0,0,...) at 0xc08fea35 = kern_open+0x35
open(c6b4faf0,df628cf8,c,df628d38,c0d3c68c,...) at 0xc08fea70 = open+0x30
syscall(df628d38) at 0xc0b96cb4 = syscall+0x2b4
Xint0x80_syscall() at 0xc0b792c0 = Xint0x80_syscall+0x20
--- syscall (5, FreeBSD ELF32, open), eip = 0x2830f2bf, esp = 0xbfbfe8bc, ebp = 0xbfbfe8e8 ---
db> bt 2422
Tracing pid 2422 tid 100100 td 0xc6b4f460
sched_switch(c6b4f460,0,104,191,15b2418a,...) at 0xc0885086 = sched_switch+0x406
mi_switch(104,0,c0c54b40,1d6,0,...) at 0xc086c120 = mi_switch+0x200
sleepq_switch(c6b4f460,0,c0c54b40,18b,0,...) at 0xc089b5df = sleepq_switch+0x15f
sleepq_catch_signals(df631a4c,c085390a,c64af990,0,c6b4f460,...) at 0xc089b6c7 = sleepq_catch_signals+0xb7
sleepq_timedwait_sig(c64af9a4,0,df631a7c,101,0,...) at 0xc089c0ca = sleepq_timedwait_sig+0x1a
_cv_timedwait_sig(c64af9a4,c64af990,3d091,5d1,c64eb3b8,...) at 0xc0820f20 = _cv_timedwait_sig+0x250
seltdwait(df631c28,df631c30,c6b17c80,c6b4f460,df631ae8,...) at 0xc08a6a2a = seltdwait+0x8a
kern_select(c6b4f460,4,bfbfe9f0,0,bfbfe970,df631c70,20,fa,0) at 0xc08a7cd4 = kern_select+0x4f4
select(c6b4f460,df631cf8,14,df631d38,c0d3d02c,...) at 0xc08a8026 = select+0x66
syscall(df631d38) at 0xc0b96cb4 = syscall+0x2b4
Xint0x80_syscall() at 0xc0b792c0 = Xint0x80_syscall+0x20
--- syscall (93, FreeBSD ELF32, select), eip = 0x2831c0f3, esp = 0xbfbfe8dc, ebp = 0xbfbfe918 ---
db> 

Any suggestions for "something interesting" to check?

Thanks!

Peace,
david
-- 
David H. Wolfskill				david_at_catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.

Received on Thu Sep 17 2009 - 22:12:34 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:55 UTC