Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jun 2002 22:11:49 -0700 (PDT)
From:      Andrew J Forgue <ajf@agitated.net>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   alpha/39560: unaligned access in wihap_input_data ( wi_hostap.c  )
Message-ID:  <200206200511.g5K5BnZY066017@www.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         39560
>Category:       alpha
>Synopsis:       unaligned access in wihap_input_data ( wi_hostap.c  )
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-alpha
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 19 22:20:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Andrew J Forgue
>Release:        4.6-STABLE
>Organization:
>Environment:
FreeBSD thunder.home.agitated.net 4.6-STABLE FreeBSD 4.6-STABLE #0: Thu Jun 20 00:39:29 EDT 2002     root@thunder.home.agitated.net:/usr/src/sys/compile/thunder  alpha
>Description:
While running the new hostap code for the PRISM Chipset, configuration of the card for hostap goes normal, but as soon as any network card is trying to use it as an AP, the kernel panics with the below information 0x4 (unaligned trap).

Wireless Card
-------------------------
wi0: <Linksys WDT11> port 0x8180-0x81bf,0x8100-0x817f mem 0x80025000-0x800253ff irq 16 at device 9.0 on pci1
wi0: interrupting at CIA irq 16
wi0: 802.11 address: 00:03:2f:00:26:01
wi0: using RF:PRISM2 MAC:HFA3841 CARD:HWB3163 rev.A
wi0: Intersil Firmware: Primary 0.03.00, Station 0.08.00


Syslog Entries
-----------------------------------
Jun 20 00:57:25 thunder /kernel:
Jun 20 00:57:25 thunder /kernel: fatal kernel trap:
Jun 20 00:57:25 thunder /kernel:
Jun 20 00:57:25 thunder /kernel: trap entry = 0x4 (unaligned access fault)
Jun 20 00:57:25 thunder /kernel: a0         = 0xfffffe0011b3bc02
Jun 20 00:57:25 thunder /kernel: a1         = 0x28
Jun 20 00:57:25 thunder /kernel: a2         = 0x2
Jun 20 00:57:25 thunder /kernel: pc         = 0xfffffc00003895f8
Jun 20 00:57:25 thunder /kernel: ra         = 0xfffffc00003819bc
Jun 20 00:57:25 thunder /kernel: curproc    = 0
Jun 20 00:57:25 thunder /kernel:

GDB 
-----------------------------------
(kgdb) where
#0  0xfffffc00003ad780 in dumpsys () at ../../kern/kern_shutdown.c:486
#1  0xfffffc00003ad2c8 in boot (howto=256) at ../../kern/kern_shutdown.c:316
#2  0xfffffc00003adb70 in panic (fmt=0xfffffc00005405fc "trap") at ../../kern/kern_shutdown.c:595
#3  0xfffffc00004e15bc in trap (a0=18446741874983287810, a1=40, a2=2, entry=4, framep=0xfffffe0011b3ba50) at ../../alpha/alpha/trap.c:551
#4  0xfffffc00004d3564 in XentUna ()
#5  0xfffffc00003819bc in wi_rxeof (sc=0xfffffe0001615120) at ../../dev/wi/if_wi.c:720
warning: Hit heuristic-fence-post without finding
warning: enclosing function for address 0x4


PC Register
-----------------------------------
(kgdb) l *0xfffffc00003895b8
0xfffffc00003895b8 is in wihap_data_input (../../dev/wi/wi_hostap.c:1061).
1056            struct wihap_info       *whi = &sc->wi_hostap_info;
1057            struct wihap_sta_info   *sta;
1058            int                     mcast, s;
1059
1060            /* TODS flag must be set. */
1061            if (!(rxfrm->wi_frame_ctl & htole16(WI_FCTL_TODS))) {      <-------- PC
1062                    if (ifp->if_flags & IFF_DEBUG)
1063                            printf("wihap_data_input: no TODS src=%6D\n",
1064                                rxfrm->wi_addr2, ":");
1065                    m_freem(m);

RA Register
------------------------------------
(kgdb) l *0xfffffc00003819bc
0xfffffc00003819bc is in wi_rxeof (../../dev/wi/if_wi.c:720).
715                              * Give host AP code first crack at data
716                              * packets.  If it decides to handle it (or
717                              * drop it), it will return a non-zero.
718                              * Otherwise, it is destined for this host.
719                              */
720                             if (wihap_data_input(sc, &rx_frame, m))     <------- RA
721                                     return;
722                     }
723                     /* Receive packet. */
724                     m_adj(m, sizeof(struct ether_header));



>How-To-Repeat:
Configure this card as a wireless Access Point, and attempt to use it (alpha only?).

>Fix:
      
>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




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