Re: Integer Exception/5-CURRENT/cbb related

From: Larry Rosenman <ler_at_lerctr.org>
Date: Sun, 06 Apr 2003 13:57:25 -0500
--On Sunday, April 06, 2003 06:23:43 -0500 Larry Rosenman <ler_at_lerctr.org> 
wrote:

>
>
> --On Sunday, April 06, 2003 06:07:51 -0500 Larry Rosenman
> <ler_at_lerctr.org> wrote:
>
>> What more can I get?
>>
>> I did do a list of the instruction pointer in the panic, and it's in the
>> cbb driver, on a bus_space_read(IIRC), of 4 bytes, I can get whatever
>> you'd like, or put the kernel/vmcore/whatever up.
>>
> Here is the list I was refering to:
[snip]

More noodling around with GDB, but I'd like some direction from a good 
kernel hacker to find out why this is happening.

Script started on Sun Apr  6 13:48:33 2003
lerlaptop# gdb -k kernel.1 vmcore.2

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: integer divide fault
panic messages:
---
Fatal trap 18: integer divide fault while in kernel mode
instruction pointer	= 0x8:0xc0193d12
stack pointer	        = 0x10:0xd63cecc0
frame pointer	        = 0x10:0xd63cece0
code segment		= base 0x0, limit 0xfffff, type 0x1b
			= DPL 0, pres 1, def32 1, gran 1
processor eflags	= interrupt enabled, IOPL = 0
current process		= 23 (irq11: cbb0 cbb1+++)
trap number		= 18
panic: integer divide fault

syncing disks, buffers remaining... 3541 3537 3537 3537 3537 3537 3537 3537 
3537 3537 3537 3537 3537 3537 3537 3537 3537 3537 3537 3537 3537
giving up on 1817 buffers
Uptime: 6m0s
Dumping 503 MB
ata0: resetting devices ..
done
 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
---
Reading symbols from 
/usr/obj/usr/src/sys/LERLAPTOP/modules/usr/src/sys/modules/acpi/acpi.ko.deb
ug...done.
Loaded symbols for 
/usr/obj/usr/src/sys/LERLAPTOP/modules/usr/src/sys/modules/acpi/acpi.ko.deb
ug
Reading symbols from 
/usr/obj/usr/src/sys/LERLAPTOP/modules/usr/src/sys/modules/linux/linux.ko.d
ebug...done.
Loaded symbols for 
/usr/obj/usr/src/sys/LERLAPTOP/modules/usr/src/sys/modules/linux/linux.ko.d
ebug
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:239
239		dumping++;
(kgdb) bt
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:239
#1  0xc0245b1a in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:371
#2  0xc0245d93 in panic () at /usr/src/sys/kern/kern_shutdown.c:542
#3  0xc039a10e in trap_fatal (frame=0xc14eb130, eva=0)
    at /usr/src/sys/i386/i386/trap.c:843
#4  0xc0399c02 in trap (frame=
      {tf_fs = -1051852776, tf_es = -1051852784, tf_ds = -700710896, tf_edi 
= -1051807440, tf_esi = -1051832832, tf_ebp = -700650272, tf_isp = 
-700650324, tf_ebx = -1007012800, tf_edx = -546881536, tf_ecx = 
-1069393536, tf_eax = 0, tf_trapno = 18, tf_err = 0, tf_eip = -1072087790, 
tf_cs = 8, tf_eflags = 514, tf_esp = -1071394701, tf_ss = 344}) at 
/usr/src/sys/i386/i386/trap.c:640
#5  0xc038b318 in calltrap () at {standard input}:96
#6  0xc0234502 in ithread_loop (arg=0xc3f8aa00)
    at /usr/src/sys/kern/kern_intr.c:536
#7  0xc0233742 in fork_exit (callout=0xc02343b0 <ithread_loop>, arg=0x0,
    frame=0x0) at /usr/src/sys/kern/kern_fork.c:796
(kgdb) fr 4
#4  0xc0399c02 in trap (frame=
      {tf_fs = -1051852776, tf_es = -1051852784, tf_ds = -700710896, tf_edi 
= -1051807440, tf_esi = -1051832832, tf_ebp = -700650272, tf_isp = 
-700650324, tf_ebx = -1007012800, tf_edx = -546881536, tf_ecx = 
-1069393536, tf_eax = 0, tf_trapno = 18, tf_err = 0, tf_eip = -1072087790, 
tf_cs = 8, tf_eflags = 514, tf_esp = -1071394701, tf_ss = 344}) at 
/usr/src/sys/i386/i386/trap.c:640
640			trap_fatal(&frame, eva);
(kgdb) l
635				/* FALLTHROUGH */
636	#endif /* POWERFAIL_NMI */
637	#endif /* DEV_ISA */
638			}
639	
640			trap_fatal(&frame, eva);
641			goto out;
642		}
643	
644		/* Translate fault for emulators (e.g. Linux) */
(kgdb) print frame
$1 = {tf_fs = -1051852776, tf_es = -1051852784, tf_ds = -700710896,
  tf_edi = -1051807440, tf_esi = -1051832832, tf_ebp = -700650272,
  tf_isp = -700650324, tf_ebx = -1007012800, tf_edx = -546881536,
  tf_ecx = -1069393536, tf_eax = 0, tf_trapno = 18, tf_err = 0,
  tf_eip = -1072087790, tf_cs = 8, tf_eflags = 514, tf_esp = -1071394701,
  tf_ss = 344}
(kgdb) print fro? ?ame/x
No symbol "x" in current context.
(kgdb) print f? ?? ?/x frame
$2 = {tf_fs = 0xc14e0018, tf_es = 0xc14e0010, tf_ds = 0xd63c0010,
  tf_edi = 0xc14eb130, tf_esi = 0xc14e4e00, tf_ebp = 0xd63cece0,
  tf_isp = 0xd63cecac, tf_ebx = 0xc3fa3440, tf_edx = 0xdf674000,
  tf_ecx = 0xc0425980, tf_eax = 0x0, tf_trapno = 0x12, tf_err = 0x0,
  tf_eip = 0xc0193d12, tf_cs = 0x8, tf_eflags = 0x202, tf_esp = 0xc023d073,
  tf_ss = 0x158}
(kgdb) fr 5
#5  0xc038b318 in calltrap () at {standard input}:96
96	{standard input}: No such file or directory.
	in {standard input}
Current language:  auto; currently asm
(kgdb) fr 6
#6  0xc0234502 in ithread_loop (arg=0xc3f8aa00)
    at /usr/src/sys/kern/kern_intr.c:536
536					ih->ih_handler(ih->ih_argument);
Current language:  auto; currently c
(kgdb) print ig? ?h
$3 = (struct intrhand *) 0xc3fa3440
(kgdb) print *ih
$4 = {ih_handler = 0xc0193cf0 <cbb_intr>, ih_argument = 0xc14e4e00,
  ih_flags = 0, ih_name = 0xc3efa980 "cbb0", ih_ithread = 0xc3f8aa00,
  ih_need = 0, ih_next = {tqe_next = 0xc3fa3280, tqe_prev = 0xc3f8aa40},
  ih_pri = 4 '\004'}
(kgdb) print *ih->ih_ithread
$5 = {it_lock = {mtx_object = {lo_class = 0xc0425920,
      lo_name = 0xc03dac81 "ithread", lo_type = 0xc03dac81 "ithread",
      lo_flags = 196608, lo_list = {tqe_next = 0x0, tqe_prev = 0x0},
      lo_witness = 0x0}, mtx_lock = 4, mtx_recurse = 0, mtx_blocked = {
      tqh_first = 0x0, tqh_last = 0xc3f8aa24}, mtx_contested = {le_next = 
0x0,
      le_prev = 0x0}}, it_td = 0xc14eb130, it_list = {le_next = 0x0,
    le_prev = 0x0}, it_handlers = {tqh_first = 0xc3fa3440,
    tqh_last = 0xc3f84e98}, it_interrupted = 0x0,
  it_disable = 0xc039d640 <ithread_disable>,
  it_enable = 0xc039d5d0 <ithread_enable>, it_md = 0x0, it_flags = 0,
  it_need = 0, it_vector = 11, it_name = "irq11:", '\0' <repeats 13 times>}
(kgdb) lerlaptop# ^D??exit

Script done on Sun Apr  6 13:51:51 2003


-- 
Larry Rosenman                     http://www.lerctr.org/~ler
Phone: +1 972-414-9812                 E-Mail: ler_at_lerctr.org
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
Received on Sun Apr 06 2003 - 09:57:33 UTC

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