Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Jul 2013 11:23:01 +0200
From:      =?utf-8?Q?Hans_Petter_Selasky?= <hans.petter.selasky@bitfrost.no>
To:        =?utf-8?Q?Adrian_Chadd?= <adrian@freebsd.org>,  =?utf-8?Q?XiaoQI_Ge?= <ghw@7axu.com>, =?utf-8?Q?sam=40freebsd=2Eorg?= <sam@freebsd.org>
Cc:        =?utf-8?Q?freebsd-arm?= <freebsd-arm@freebsd.org>, =?utf-8?Q?freebsd-wireless=40freebsd=2Eorg?= <freebsd-wireless@freebsd.org>
Subject:   RE: My WLI-UC-GNM up crash
Message-ID:  <zarafa.51f4e2f5.7061.5a3556077ab376ad@mail.lockless.no>
In-Reply-To: <CAJ-Vmo=pt7Cv9TRmcB%2BFHB_otz-2Jy6HbJgSZ5JfH%2BS3qcf8uA@mail.gmail.com>
References:  <cakrd9exvuqeqz=3ntmh7k3e4_6fjw9jph_tpfchujhqhwwbzsg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This patch=3F=0D=0A=0D=0Acommit bae4e38c197f464c4bffe7037d5d491e462105b0=0D=
=0AAuthor: sam <sam@FreeBSD.org>=0D=0ADate:   Thu Apr 1 00:38:45 2004 +00=
00=0D=0A=0D=0A    radiotap updates:=0D=0A   =20=0D=0A    o force little-e=
ndian byte order for header=0D=0A    o pad header to 32-bit boundary to g=
uard against applications that assume=0D=0A      packet data alignment=0D=
=0A=0D=0A--HPS=0D=0A=20=0D=0A=20=0D=0A-----Original message-----=0D=0A> F=
rom:Adrian Chadd <adrian@freebsd.org <mailto:adrian@freebsd.org> >=0D=0A>=
 Sent: Sunday 28th July 2013 6:29=0D=0A> To: XiaoQI Ge <ghw@7axu.com <mai=
lto:ghw@7axu.com> >=0D=0A> Cc: freebsd-arm <freebsd-arm@freebsd.org <mail=
to:freebsd-arm@freebsd.org> >; freebsd-wireless@freebsd.org <mailto:freeb=
sd-wireless@freebsd.org>=20=0D=0A> Subject: Re: My WLI-UC-GNM up crash=0D=
=0A>=20=0D=0A> Not sure, I haven't dug into it. It shouldn't be hard to f=
ix though.=0D=0A>=20=0D=0A> I think someone just screwed up in defining t=
he structures in the USB=0D=0A> drivers and didn't specify alignment. ath=
(4) got it right because Sam=0D=0A> ran it on MIPS/ARM boards.=0D=0A>=20=0D=
=0A>=20=0D=0A>=20=0D=0A> -adrian=0D=0A>=20=0D=0A> On 27 July 2013 20:34, =
XiaoQI Ge <ghw@7axu.com <mailto:ghw@7axu.com> > wrote:=0D=0A> > That shou=
ld be how to solve it=3F=0D=0A> > --=0D=0A> > Regards.=0D=0A> > By: XiaoQ=
I Ge; PGP:8B09D5F7=0D=0A> > WWW: https://www.7axu.com/=0D=0A>; >=0D=0A> >=0D=
=0A> >=0D=0A> > 2013/7/27 Adrian Chadd <adrian@freebsd.org <mailto:adrian=
@freebsd.org> >:=0D=0A> >> This is known; there's some alignment issue wi=
th the radiotap TX/RX=0D=0A> >> structures in some of these USB devices.=0D=
=0A> >>=0D=0A> >>=0D=0A> >>=0D=0A> >> -adrain=0D=0A> >>=0D=0A> >> On 25 J=
uly 2013 20:23, XiaoQI Ge <ghw@7axu.com <mailto:ghw@7axu.com> > wrote:=0D=
=0A> >>> =E6=88=91=E6=9B=B4=E6=96=B0=E5=88=B0=E6=9C=80=E6=96=B0=E7=9A=84=E6=
=BA=90=E7=A0=81=EF=BC=88r253662=EF=BC=89=EF=BC=8C=E8=BF=99=E6=AC=A1=E9=94=
=99=E8=AF=AF=E4=BF=A1=E6=81=AF=E5=8F=98=E6=88=90=E4=BA=860xde9f4d34=0D=0A=
> >>>=0D=0A> >>> [root@FreeBSD.ttyu0 <mailto:root@FreeBSD.ttyu0> ] =CB=9C=
 # Fatal kernel mode data abort: 'Alignment Fault 1'=0D=0A> >>> trapframe=
: 0xde9f4d34=0D=0A> >>> FSR=3D00000801, FAR=3Dc284afbb, spsr=3D00000013=0D=
=0A> >>> r0 =3Dc284c000, r1 =3Dc284afbb, r2 =3Dc284c210, r3 =3D0000096c=0D=
=0A> >>> r4 =3Dc284c024, r5 =3Dc05f07c5, r6 =3D00000014, r7 =3Dc2844800=0D=
=0A> >>> r8 =3Dc05f07c5, r9 =3Dc284c000, r10=3D000035cb, r11=3Dde9f4e10=0D=
=0A> >>> r12=3D0000002e, ssp=3Dde9f4d80, slr=3D00000000, pc =3Dc046d20c=0D=
=0A> >>>=0D=0A> >>> [ thread pid 0 tid 100053 ]=0D=0A> >>> Stopped at    =
  ieee80211_radiotap_chan_change+0x90:    strh    r3, [r1]=0D=0A> >>> db>=
=0D=0A> >>> ---=0D=0A> >>> Kernel wlan related options=0D=0A> >>> device =
         wlan            # 802.11 support=0D=0A> >>> options         IEEE=
80211_DEBUG # enable debug msgs=0D=0A> >>> options         IEEE80211_AMPD=
U_AGE # age frames in AMPDU reorder q's=0D=0A> >>> options         IEEE80=
211_SUPPORT_MESH  # enable 802.11s draft support=0D=0A> >>> device       =
   wlan_wep        # 802.11 WEP support=0D=0A> >>> device          wlan_c=
cmp       # 802.11 CCMP support=0D=0A> >>> device          wlan_tkip     =
  # 802.11 TKIP support=0D=0A> >>> device          wlan_amrr       # AMRR=
 transmit rate control algorithm=0D=0A> >>> device          firmware     =
   # firmware assist module=0D=0A> >>> device run              #Ralink Te=
chnology USB IEEE 802.11a/g/n=0D=0A> >>> wireless network device=0D=0A> >=
>> device runfw            #Firmware Module for Ralink driver=0D=0A> >>>=0D=
=0A> >>> ---=0D=0A> >>> The compiler command=0D=0A> >>> make TARGET_ARCH=3D=
armv6 TARGET_CPUTYPE=3Darmv6 KERNCONF=3DBBB WITH_FDT=3Dyes=0D=0A> >>> bui=
ldkernel=0D=0A> >>> --=0D=0A> >>> Regards.=0D=0A> >>> By: XiaoQI Ge; PGP:=
8B09D5F7=0D=0A> >>> WWW: https://www.7axu.com/=0D=0A>; >>>=0D=0A> >>>=0D=0A=
> >>>=0D=0A> >>> 2013/7/24 XiaoQI Ge <ghw@7axu.com <mailto:ghw@7axu.com> =
>:=0D=0A> >>>> How do I debug it=3F Can provide useful information=0D=0A>=
 >>>>=0D=0A> >>>> login: root=0D=0A> >>>> Jul 24 18:27:31 FreeBSD login: =
ROOT LOGIN (root) ON ttyu0=0D=0A> >>>> FreeBSD 10.0-CURRENT (BBB) #4 r253=
585M: Wed Jul 24 17:07:53 CST 2013=0D=0A> >>>> [root@FreeBSD.ttyu0 <mailt=
o:root@FreeBSD.ttyu0> ] =CB=9C # ifconfig wlan create wlandev run0=0D=0A>=
 >>>> wlan0: Ethernet address: 10:6f:3f:2b:fd:6d=0D=0A> >>>> wlan0=0D=0A>=
 >>>> [root@FreeBSD.ttyu0 <mailto:root@FreeBSD.ttyu0> ] =CB=9C # ifconfig=
 wlan0 up=0D=0A> >>>> run0: firmware RT2870 ver. 0.236 loaded=0D=0A> >>>>=
 Fatal kernel mode data abort: 'Alignment Fault 1'=0D=0A> >>>> trapframe:=
 0xde9e4d5c=0D=0A> >>>> FSR=3D00000801, FAR=3Dc282ffbb, spsr=3D00000013=0D=
=0A> >>>> r0 =3Dc2831000, r1 =3Dc282ffbb, r2 =3Dc2831210, r3 =3D0000096c=0D=
=0A> >>>> r4 =3Dc2831024, r5 =3Dc2831000, r6 =3Dc05d9362, r7 =3Dc2829800=0D=
=0A> >>>> r8 =3D00000014, r9 =3Dc08144d8, r10=3D80001cce, r11=3Dde9e4e10=0D=
=0A> >>>> r12=3D0000002e, ssp=3Dde9e4da8, slr=3D00000000, pc =3Dc045c510=0D=
=0A> >>>>=0D=0A> >>>> [ thread pid 0 tid 100053 ]=0D=0A> >>>> Stopped at =
     ieee80211_radiotap_chan_change+0x90:    strh    r3, [r1]=0D=0A> >>>>=
 db>=0D=0A> >>>>=0D=0A> >>>>=0D=0A> >>>> These two places modified:=0D=0A=
> >>>> 2522     }=0D=0A> >>>> 2523=0D=0A> >>>> 2524     ant =3D run_maxrs=
si_chain(sc, rxwi);=0D=0A> >>>> 2525     rssi =3D rxwi->rssi[ant];=0D=0A>=
 >>>> 2526     nf =3D run_rssi2dbm(sc, rssi, ant);=0D=0A> >>>> 2527=0D=0A=
> >>>> 2528     m->m_pkthdr.rcvif =3D ifp;=0D=0A> >>>> 2529     m->m_pkth=
dr.len =3D m->m_len =3D len;=0D=0A> >>>> 2530 /*=0D=0A> >>>> 2531     if =
(ni !=3D NULL) {=0D=0A> >>>> 2532         (void)ieee80211_input(ni, m, rs=
si, nf);=0D=0A> >>>> 2533         ieee80211_free_node(ni);=0D=0A> >>>> 25=
34     } else {=0D=0A> >>>> 2535         (void)ieee80211_input_all(ic, m,=
 rssi, nf);=0D=0A> >>>> 2536     }=0D=0A> >>>> 2537 */=0D=0A> >>>> 2538  =
   /*=0D=0A> >>>> 2539      * DAAN: fill-in tap header BEFORE calling iee=
e80211_input*() so the=0D=0A> >>>> 2540      * user will see the actual d=
ata that belongs to THIS packet..=0D=0A> >>>> 2541      */=0D=0A> >>>> 25=
42     if (__predict_false(ieee80211_radiotap_active(ic))) {=0D=0A> >>>> =
2543         struct run_rx_radiotap_header *tap =3D &sc->sc_rxtap;=0D=0A>=
 >>>> 2544=0D=0A> >>>> 2545         tap->wr_flags =3D 0;=0D=0A> >>>> 2546=
         tap->wr_chan_freq =3D htole16(ic->ic_curchan->ic_freq);=0D=0A> >=
>>> 2547         tap->wr_chan_flags =3D htole16(ic->ic_curchan->ic_flags)=
;=0D=0A> >>>> 2548         tap->wr_antsignal =3D rssi;=0D=0A> >>>> 2549  =
       tap->wr_antenna =3D ant;=0D=0A> >>>> 2550         tap->wr_dbm_ants=
ignal =3D run_rssi2dbm(sc, rssi, ant);=0D=0A> >>>> 2551         tap->wr_r=
ate =3D 2;   /* in case it can't be found below */=0D=0A> >>>> 2552      =
   phy =3D le16toh(rxwi->phy);=0D=0A> >>>> 2553         switch (phy & RT2=
860_PHY_MODE) {=0D=0A> >>>> 2554         case RT2860_PHY_CCK:=0D=0A> >>>>=
 2555             switch ((phy & RT2860_PHY_MCS) & =CB=9CRT2860_PHY_SHPRE=
) {=0D=0A> >>>> 2556             case 0: tap->wr_rate =3D   2; break;=0D=0A=
> >>>> 2557             case 1: tap->wr_rate =3D   4; break;=0D=0A> >>>> =
2558             case 2: tap->wr_rate =3D  11; break;=0D=0A> >>>> 2559   =
          case 3: tap->wr_rate =3D  22; break;=0D=0A> >>>> 2560          =
   }=0D=0A> >>>> 2561             if (phy & RT2860_PHY_SHPRE)=0D=0A> >>>>=
 2562                 tap->wr_flags |=3D IEEE80211_RADIOTAP_F_SHORTPRE;=0D=
=0A> >>>> 2563             break;=0D=0A> >>>> 2564         case RT2860_PH=
Y_OFDM:=0D=0A> >>>> 2565             switch (phy & RT2860_PHY_MCS) {=0D=0A=
> >>>> 2566             case 0: tap->wr_rate =3D  12; break;=0D=0A> >>>> =
2567             case 1: tap->wr_rate =3D  18; break;=0D=0A> >>>> 2568   =
          case 2: tap->wr_rate =3D  24; break;=0D=0A> >>>> 2569          =
   case 3: tap->wr_rate =3D  36; break;=0D=0A> >>>> 2570             case=
 4: tap->wr_rate =3D  48; break;=0D=0A> >>>> 2571             case 5: tap=
->wr_rate =3D  72; break;=0D=0A> >>>> 2572             case 6: tap->wr_ra=
te =3D  96; break;=0D=0A> >>>> 2573             case 7: tap->wr_rate =3D =
108; break;=0D=0A> >>>> 2574             }=0D=0A> >>>> 2575             b=
reak;=0D=0A> >>>> 2576         }=0D=0A> >>>> 2577     }=0D=0A> >>>> 2578=0D=
=0A> >>>> 2579     if (ni !=3D NULL) {=0D=0A> >>>> 2580         (void)iee=
e80211_input(ni, m, rssi, nf);=0D=0A> >>>> 2581         ieee80211_free_no=
de(ni);=0D=0A> >>>> 2582     } else {=0D=0A> >>>> 2583         (void)ieee=
80211_input_all(ic, m, rssi, nf);=0D=0A> >>>> 2584     }=0D=0A> >>>> 2585=
=0D=0A> >>>> 2586 }=0D=0A> >>>> 2587=0D=0A> >>>> 2588 static void=0D=0A> =
>>>>=0D=0A> >>>>=0D=0A> >>>> Index: sys/vm/vm_map.c=0D=0A> >>>> =3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=0D=0A> >>>> --- sys/vm/vm_map.=
c     (revision 253514)=0D=0A> >>>> +++ sys/vm/vm_map.c     (working copy=
)=0D=0A> >>>> @@ -239,8 +239,7 @@=0D=0A> >>>>         vm_map_t map;=0D=0A=
> >>>>=0D=0A> >>>>         map =3D (vm_map_t)mem;=0D=0A> >>>> -       map=
->nentries =3D 0;=0D=0A> >>>> -       map->size =3D 0;=0D=0A> >>>> +     =
  memset(map, 0, sizeof(*map));=0D=0A> >>>>         mtx_init(&map->system=
_mtx, "vm map (system)", NULL, MTX_DEF |=0D=0A> >>>> MTX_DUPOK);=0D=0A> >=
>>>         sx_init(&map->lock, "vm map (user)");=0D=0A> >>>>         ret=
urn (0);=0D=0A> >>>>=0D=0A> >>>> --=0D=0A> >>>> Regards.=0D=0A> >>>> By: =
XiaoQI Ge; PGP:8B09D5F7=0D=0A> >>>> WWW: https://www.7axu.com/=0D=0A>; >>>=
>=0D=0A> >>>>=0D=0A> >>>>=0D=0A> >>>> 2013/7/24 XiaoQI Ge <ghw@7axu.com <=
mailto:ghw@7axu.com> >:=0D=0A> >>>>> I manually make up, is compiling the=
 kernel=0D=0A> >>>>> --=0D=0A> >>>>> Regards.=0D=0A> >>>>> By: XiaoQI Ge;=
 PGP:8B09D5F7=0D=0A> >>>>> WWW: https://www.7axu.com/=0D=0A>; >>>>>=0D=0A>=
 >>>>>=0D=0A> >>>>>=0D=0A> >>>>> 2013/7/24 XiaoQI Ge <ghw@7axu.com <mailt=
o:ghw@7axu.com> >:=0D=0A> >>>>>>  patch < /root/if_run_2013_01_19_radiota=
p_fix_only.diff appears to be invalid=0D=0A> >>>>>>=0D=0A> >>>>>> ] /usr/=
src/sys/dev/usb/wlan # patch <=0D=0A> >>>>>> /root/if_run_2013_01_19_radi=
otap_fix_only.diff=0D=0A> >>>>>> Hmm...  Looks like a unified diff to me.=
=2E.=0D=0A> >>>>>> The text leading up to this was:=0D=0A> >>>>>> -------=
-------------------=0D=0A> >>>>>> |--- if_run.c.fix1_vnet 2013-06-14 10:1=
2:49.786774072 +0200=0D=0A> >>>>>> |+++ if_run.c.fix2_vnet_plus_radiotap =
  2013-06-14 10:15:34.890774314 +0200=0D=0A> >>>>>> ---------------------=
-----=0D=0A> >>>>>> File to patch:=0D=0A> >>>>>>=0D=0A> >>>>>>=0D=0A> >>>=
>>> 2013/7/23 Daan Vreeken <Daan@vitsch.nl <mailto:Daan@vitsch.nl> >:=0D=0A=
> >>>>>>> cd /usr/src/sys/dev/usb/wlan=0D=0A> >>>>>>=0D=0A> >>>>>>=0D=0A>=
 >>>>>>=0D=0A> >>>>>> --=0D=0A> >>>>>> Regards.=0D=0A> >>>>>> By: XiaoQI =
Ge; PGP:8B09D5F7=0D=0A> >>>>>> WWW: https://www.7axu.com/=0D=0A>; >>> ____=
___________________________________________=0D=0A> >>> freebsd-wireless@f=
reebsd.org <mailto:freebsd-wireless@freebsd.org>  mailing list=0D=0A> >>>=
 http://lists.freebsd.org/mailman/listinfo/freebsd-wireless <http://lists=
=2Efreebsd.org/mailman/listinfo/freebsd-wireless>=20=0D=0A> >>> To unsubs=
cribe, send any mail to "freebsd-wireless-unsubscribe@freebsd.org <mailto=
:freebsd-wireless-unsubscribe@freebsd.org> "=0D=0A> _____________________=
__________________________=0D=0A> freebsd-arm@freebsd.org <mailto:freebsd=
-arm@freebsd.org>  mailing list=0D=0A> http://lists.freebsd.org/mailman/l=
istinfo/freebsd-arm <http://lists.freebsd.org/mailman/listinfo/freebsd-ar=
m>=20=0D=0A> To unsubscribe, send any mail to "freebsd-arm-unsubscribe@fr=
eebsd.org <mailto:freebsd-arm-unsubscribe@freebsd.org> "=0D=0A=0D=0A
From owner-freebsd-wireless@FreeBSD.ORG  Sun Jul 28 10:33:51 2013
Return-Path: <owner-freebsd-wireless@FreeBSD.ORG>
Delivered-To: freebsd-wireless@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115])
 (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by hub.freebsd.org (Postfix) with ESMTP id AC7D2D5A;
 Sun, 28 Jul 2013 10:33:51 +0000 (UTC) (envelope-from hps@bitfrost.no)
Received: from mta.bitpro.no (mta.bitpro.no [92.42.64.202])
 by mx1.freebsd.org (Postfix) with ESMTP id 207BB289E;
 Sun, 28 Jul 2013 10:33:50 +0000 (UTC)
Received: from mail.lockless.no (mail.lockless.no [46.29.221.38])
 by mta.bitpro.no (Postfix) with ESMTP id 0DC197A270;
 Sun, 28 Jul 2013 12:33:49 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.lockless.no (Postfix) with ESMTP id 1C4C88F04E2;
 Sun, 28 Jul 2013 12:33:54 +0200 (CEST)
X-Virus-Scanned: by amavisd-new-2.6.4 (20090625) (Debian) at lockless.no
Received: from mail.lockless.no ([127.0.0.1])
 by localhost (mail.lockless.no [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id fyuxMI1VnXwj; Sun, 28 Jul 2013 12:33:53 +0200 (CEST)
Received: from laptop015.hselasky.homeunix.org
 (cm-176.74.213.204.customer.telag.net [176.74.213.204])
 by mail.lockless.no (Postfix) with ESMTPSA id D4CAA8F04E1;
 Sun, 28 Jul 2013 12:33:52 +0200 (CEST)
Message-ID: <51F4F3E9.9010605@bitfrost.no>
Date: Sun, 28 Jul 2013 12:35:21 +0200
From: Hans Petter Selasky <hps@bitfrost.no>
Organization: Bitfrost A/S
User-Agent: Mozilla/5.0 (X11; FreeBSD amd64;
 rv:17.0) Gecko/20130522 Thunderbird/17.0.6
MIME-Version: 1.0
To: Adrian Chadd <adrian@freebsd.org>
Subject: Re: My WLI-UC-GNM up crash
References: <cakrd9exvuqeqz=3ntmh7k3e4_6fjw9jph_tpfchujhqhwwbzsg@mail.gmail.com>
 <1374573600-2351360719.d37ada5f86@bliksem.vehosting.nl>
 <CAKrd9eXHXmM5_ai0=kV4Sd8U3Fej8FkKp7XXcbppxeBVDHB3Pg@mail.gmail.com>
 <201307231220.52817.Daan@vitsch.nl>
 <CAKrd9eXPB2-cAySVSGm-BJHPU9L65fm6rynMpCnNQ-M_B9zMMw@mail.gmail.com>
 <CAKrd9eWsfgd9EZytBOrxBYyeTaNjPhFO6O5qv-K4ODf9bSDvVw@mail.gmail.com>
 <CAKrd9eXJH6VQPBTLCayat47Dch8BWmhz3gzYtcSv-6unHb8QMQ@mail.gmail.com>
 <CAKrd9eW-HUqUTRkaeeC0jaeRjrgRmVhXVfiG0b_0tvgXLuTteg@mail.gmail.com>
 <CAJ-VmonJcSVs+t0jziUyeH1JMztWchObQmb3NrJ0frVq62nhDg@mail.gmail.com>
 <CAKrd9eV4-KNwgZGsRq1JRY31V8Dvmt2RLHSn4TKgbHTUxOJFfA@mail.gmail.com>
 <CAJ-Vmo=pt7Cv9TRmcB+FHB_otz-2Jy6HbJgSZ5JfH+S3qcf8uA@mail.gmail.com>
In-Reply-To: <CAJ-Vmo=pt7Cv9TRmcB+FHB_otz-2Jy6HbJgSZ5JfH+S3qcf8uA@mail.gmail.com>
Content-Type: multipart/mixed; boundary="------------090509080502000108040303"
Cc: freebsd-arm <freebsd-arm@freebsd.org>, freebsd-wireless@freebsd.org
X-BeenThere: freebsd-wireless@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: "Discussions of 802.11 stack,
 tools device driver development." <freebsd-wireless.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/freebsd-wireless>, 
 <mailto:freebsd-wireless-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-wireless>;
List-Post: <mailto:freebsd-wireless@freebsd.org>
List-Help: <mailto:freebsd-wireless-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-wireless>, 
 <mailto:freebsd-wireless-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Jul 2013 10:33:51 -0000

This is a multi-part message in MIME format.
--------------090509080502000108040303
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

Can you try the attached patch?

--HPS

--------------090509080502000108040303
Content-Type: text/x-patch;
 name="radiotap.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="radiotap.diff"

=== sys/dev/usb/wlan/if_rumvar.h
==================================================================
--- sys/dev/usb/wlan/if_rumvar.h	(revision 253548)
+++ sys/dev/usb/wlan/if_rumvar.h	(local)
@@ -29,7 +29,7 @@
 	int8_t		wr_antsignal;
 	int8_t		wr_antnoise;
 	uint8_t		wr_antenna;
-};
+} __packed __aligned(8);
 
 #define RT2573_RX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
@@ -47,7 +47,7 @@
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
 	uint8_t		wt_antenna;
-};
+} __packed __aligned(8);
 
 #define RT2573_TX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
=== sys/dev/usb/wlan/if_runvar.h
==================================================================
--- sys/dev/usb/wlan/if_runvar.h	(revision 253548)
+++ sys/dev/usb/wlan/if_runvar.h	(local)
@@ -58,7 +58,7 @@
 	int8_t		wr_dbm_antsignal;
 	uint8_t		wr_antenna;
 	uint8_t		wr_antsignal;
-} __packed;
+} __packed __aligned(8);
 
 #define RUN_RX_RADIOTAP_PRESENT				\
 	(1 << IEEE80211_RADIOTAP_FLAGS |		\
@@ -75,7 +75,7 @@
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
 	uint8_t		wt_hwqueue;
-} __packed;
+} __packed __aligned(8);
 
 #define IEEE80211_RADIOTAP_HWQUEUE 15
 
=== sys/dev/usb/wlan/if_uathvar.h
==================================================================
--- sys/dev/usb/wlan/if_uathvar.h	(revision 253548)
+++ sys/dev/usb/wlan/if_uathvar.h	(local)
@@ -52,7 +52,7 @@
 	int8_t		wr_antsignal;
 	int8_t		wr_antnoise;
 	u_int8_t	wr_antenna;
-} __packed;
+} __packed __aligned(8);
 
 #define UATH_RX_RADIOTAP_PRESENT (		\
 	(1 << IEEE80211_RADIOTAP_TSFT)		| \
@@ -69,7 +69,7 @@
 	uint8_t		wt_flags;
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
-} __packed;
+} __packed __aligned(8);
 
 #define	UATH_TX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
=== sys/dev/usb/wlan/if_upgtvar.h
==================================================================
--- sys/dev/usb/wlan/if_upgtvar.h	(revision 253548)
+++ sys/dev/usb/wlan/if_upgtvar.h	(local)
@@ -380,7 +380,7 @@
 	uint16_t	wr_chan_freq;
 	uint16_t	wr_chan_flags;
 	int8_t		wr_antsignal;
-} __packed;
+} __packed __aligned(8);
 
 #define UPGT_RX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
@@ -394,7 +394,7 @@
 	uint8_t		wt_rate;
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
-} __packed;
+} __packed __aligned(8);
 
 #define UPGT_TX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
=== sys/dev/usb/wlan/if_uralvar.h
==================================================================
--- sys/dev/usb/wlan/if_uralvar.h	(revision 253548)
+++ sys/dev/usb/wlan/if_uralvar.h	(local)
@@ -34,7 +34,7 @@
 	int8_t		wr_antsignal;
 	int8_t		wr_antnoise;
 	uint8_t		wr_antenna;
-};
+} __packed __aligned(8);
 
 #define RAL_RX_RADIOTAP_PRESENT						\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
@@ -51,7 +51,7 @@
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
 	uint8_t		wt_antenna;
-};
+} __packed __aligned(8);
 
 #define RAL_TX_RADIOTAP_PRESENT						\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
=== sys/dev/usb/wlan/if_urtwnreg.h
==================================================================
--- sys/dev/usb/wlan/if_urtwnreg.h	(revision 253548)
+++ sys/dev/usb/wlan/if_urtwnreg.h	(local)
@@ -1030,7 +1030,7 @@
 	uint16_t	wr_chan_freq;
 	uint16_t	wr_chan_flags;
 	uint8_t		wr_dbm_antsignal;
-} __packed;
+} __packed __aligned(8);
 
 #define URTWN_RX_RADIOTAP_PRESENT			\
 	(1 << IEEE80211_RADIOTAP_FLAGS |		\
@@ -1043,7 +1043,7 @@
 	uint8_t		wt_flags;
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
-} __packed;
+} __packed __aligned(8);
 
 #define URTWN_TX_RADIOTAP_PRESENT			\
 	(1 << IEEE80211_RADIOTAP_FLAGS |		\
=== sys/dev/usb/wlan/if_urtwvar.h
==================================================================
--- sys/dev/usb/wlan/if_urtwvar.h	(revision 253548)
+++ sys/dev/usb/wlan/if_urtwvar.h	(local)
@@ -63,7 +63,7 @@
 	uint16_t	wr_chan_freq;
 	uint16_t	wr_chan_flags;
 	int8_t		wr_dbm_antsignal;
-} __packed;
+} __packed __aligned(8);
 
 #define URTW_RX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
@@ -75,7 +75,7 @@
 	uint8_t		wt_flags;
 	uint16_t	wt_chan_freq;
 	uint16_t	wt_chan_flags;
-} __packed;
+} __packed __aligned(8);
 
 #define URTW_TX_RADIOTAP_PRESENT					\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
=== sys/dev/usb/wlan/if_zydreg.h
==================================================================
--- sys/dev/usb/wlan/if_zydreg.h	(revision 253548)
+++ sys/dev/usb/wlan/if_zydreg.h	(local)
@@ -1185,7 +1185,7 @@
 	uint16_t		wr_chan_flags;
 	int8_t			wr_antsignal;
 	int8_t			wr_antnoise;
-} __packed;
+} __packed __aligned(8);
 
 #define ZYD_RX_RADIOTAP_PRESENT						\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\
@@ -1200,7 +1200,7 @@
 	uint8_t			wt_rate;
 	uint16_t		wt_chan_freq;
 	uint16_t		wt_chan_flags;
-} __packed;
+} __packed __aligned(8);
 
 #define ZYD_TX_RADIOTAP_PRESENT						\
 	((1 << IEEE80211_RADIOTAP_FLAGS) |				\

--------------090509080502000108040303--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?zarafa.51f4e2f5.7061.5a3556077ab376ad>