Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Jan 2006 08:40:07 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-current@freebsd.org
Cc:        Warner Losh <imp@freebsd.org>, "Alexandre \"Sunny\" Kovalenko" <Alex.Kovalenko@verizon.net>
Subject:   Re: Fatal trap 12 when inserting Linksys WPC55AG cardbus card on 12/30 -CURRENT
Message-ID:  <200601040840.09169.jhb@freebsd.org>
In-Reply-To: <1136000459.660.12.camel@RabbitsDen>
References:  <1136000459.660.12.camel@RabbitsDen>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 30 December 2005 10:40 pm, Alexandre "Sunny" Kovalenko wrote:
> This happens on -CURRENT as of 8:00AM, December 30:
>
> Unread portion of the kernel message buffer:
> Status is 0x30000821 d8bb0000
> cbb0: card inserted: event=3D0x00000000, state=3D30000821
> cbb0: cbb_power: 3V
> Interrupt storm detected on "irq10:"; throttling interrupt source
>
>
> Fatal trap 12: page fault while in kernel mode
> fault virtual address   =3D 0xda183000
> fault code              =3D supervisor read, page not present
> instruction pointer     =3D 0x20:0xc04ac0f8
> stack pointer           =3D 0x28:0xd8b62728
> frame pointer           =3D 0x28:0xd8b62738
> code segment            =3D base 0x0, limit 0xfffff, type 0x1b
>                         =3D DPL 0, pres 1, def32 1, gran 1
> processor eflags        =3D interrupt enabled, resume, IOPL =3D 0
> current process         =3D 21 (cbb0)

Does this still occur on recent HEAD?  There have been several cardbus chan=
ges=20
in the past few days.

> Dumping 607 MB (2 chunks)
>   chunk 0: 1MB (159 pages) ... ok
>   chunk 1: 607MB (155376 pages) 591 575 559 543 527 511 495 479 463 447
> 431 415 399 383 367 351 335 319 303 287 271 255 239 223 207 191 175 159
> 143 127 111 95 79 63 47 31 15
>
> #0  doadump () at pcpu.h:166
> 166     pcpu.h: No such file or directory.
>         in pcpu.h
> #0  doadump () at pcpu.h:166
> #1  0xc0471a29 in db_fncall (dummy1=3D0, dummy2=3D0, dummy3=3D1999,
> dummy4=3D0xd8b624e0 at /usr/src/sys/ddb/db_command.c:489
> #2  0xc04717a2 in db_command (last_cmdp=3D0xc07b70c4, cmd_table=3D0x0,
>     aux_cmd_tablep=3D0xc077d288, aux_cmd_tablep_end=3D0xc077d28c)
>     at /usr/src/sys/ddb/db_command.c:404
> #3  0xc04718aa in db_command_loop ()
> at /usr/src/sys/ddb/db_command.c:455
> #4  0xc04739b5 in db_trap (type=3D12, code=3D0)
> at /usr/src/sys/ddb/db_main.c:221
> #5  0xc05764f7 in kdb_trap (type=3D0, code=3D0, tf=3D0xd8b626e8)
>     at /usr/src/sys/kern/subr_kdb.c:485
> #6  0xc0721a8b in trap_fatal (frame=3D0xd8b626e8, eva=3D0)
>     at /usr/src/sys/i386/i386/trap.c:853
> #7  0xc0721795 in trap_pfault (frame=3D0xd8b626e8, usermode=3D0,
> eva=3D3659018240)
>     at /usr/src/sys/i386/i386/trap.c:770
> #8  0xc07212f2 in trap (frame=3D
>       {tf_fs =3D 8, tf_es =3D 40, tf_ds =3D 40, tf_edi =3D 20480, tf_esi =
=3D 1,
> tf_ebp =3D -659151048, tf_isp =3D -659151084, tf_ebx =3D -65 9150952, tf_=
edx =3D
> -635969536, tf_ecx =3D -635969536, tf_eax =3D 20480, tf_trapno =3D 12, tf=
_err
> =3D 0, tf_eip =3D -1068842760, tf_cs =3D 32, tf_eflags =3D 66050, tf_esp =
=3D
> -1009411456, tf_ss =3D -659150948}) at /usr/src/sys/i386/i386/trap.c:455#9
> 0xc070dc9a in calltrap () at /usr/src/sys/i386/i386/exception.s:137
> #10 0xc04ac0f8 in cardbus_read_tuple_mem (cbdev=3D0xc39f9680,
> res=3D0xd8b62798, start=3D20480,
>     off=3D0xd8b62798, tupleid=3D0x5000, len=3D0xd8b627a0, tupledata=3D0xd=
8b627ac
> "") at bus.h:224
> #11 0xc04ac1f3 in cardbus_read_tuple (cbdev=3D0xc39f9680, child=3D0x5000,
> res=3D0xda17e000,
>     start=3D20480, off=3D0xd8b62798, tupleid=3D0xd8b6279c, len=3D0xda17e0=
00,
>     tupledata=3D0x5000 <Address 0x5000 out of bounds>)
>     at /usr/src/sys/dev/cardbus/cardbus_cis.c:458
> #12 0xc04aca95 in cardbus_parse_cis (cbdev=3D0xc39f9680, child=3D0xc3d59b=
00,
>     callbacks=3D0xd8b62bd0, argp=3D0x0)
> at /usr/src/sys/dev/cardbus/cardbus_cis.c:645
> #13 0xc04acb96 in cardbus_do_cis (cbdev=3D0x5000, child=3D0x5000)
>     at /usr/src/sys/dev/cardbus/cardbus_cis.c:691
> #14 0xc04ab17d in cardbus_attach_card (cbdev=3D0xc39f9680)
>     at /usr/src/sys/dev/cardbus/cardbus.c:499
> #15 0xc04d246f in cbb_insert (sc=3D0xc39b4000) at card_if.h:82
> #16 0xc04d21eb in cbb_event_thread (arg=3D0xc39b4000)
> at /usr/src/sys/dev/pccbb/pccbb.c:507
> #17 0xc053b2bf in fork_exit (callout=3D0xc04d2080 <cbb_event_thread>,
> arg=3D0x5000,
>     frame=3D0x5000) at /usr/src/sys/kern/kern_fork.c:790
> #18 0xc070dcfc in fork_trampoline ()
> at /usr/src/sys/i386/i386/exception.s:198
> (kgdb)
>
> On the kernel built on December 17 (not necessarily -CURRENT as of
> December 17) card works properly. Here are dmesg bits from card
> insertion:
>
> Status is 0x30000821
> cbb0: card inserted: event=3D0x00000000, state=3D30000821
> cbb0: cbb_power: 3V
> Interrupt storm detected on "irq10:"; throttling interrupt source
> cardbus0: Non-prefetchable memory at 88000000-8800ffff
> ath0: <Atheros 5212> mem 0x88000000-0x8800ffff irq 10 at device 0.0 on
> cardbus0
> ath0: Ethernet address: 00:0c:41:dd:c7:0d
> ath0: mac 5.6 phy 4.1 radio 3.6
>
> Cardbus controller is:
>
> cbb0@pci0:10:0: class=3D0x060700 card=3D0xc60214ff chip=3D0x69721217 rev=
=3D0x00
> hdr=3D0x02
>     vendor   =3D 'O2 Micro Inc'
>     device   =3D 'OZ6912/711E0 SmartCardBus Controller'
>     class    =3D bridge
>     subclass =3D PCI-CardBus
>
> PCMCIA-to-CF adapter does not cause Fatal trap.
>
> If there are any other bits of information I can provide, please, let me
> know.

=2D-=20
John Baldwin <jhb@FreeBSD.org> =A0<>< =A0http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" =A0=3D =A0http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200601040840.09169.jhb>