Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Mar 2019 11:25:41 +0200
From:      "Andriy Voskoboinyk" <avos@freebsd.org>
To:        "Rodney W. Grimes" <rgrimes@freebsd.org>
Cc:        src-committers <src-committers@freebsd.org>, svn-src-all <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>, "Warner Losh" <imp@bsdimp.com>
Subject:   Re: svn commit: r344990 - in head: share/man/man9 sys/dev/ath sys/dev/bwi sys/dev/bwn sys/dev/ipw sys/dev/iwi sys/dev/iwm sys/dev/iwn sys/dev/malo sys/dev/mwl sys/dev/otus sys/dev/ral sys/dev/rtwn sys/...
Message-ID:  <op.zyhds3qn4dikkl@localhost>
In-Reply-To: <CANCZdfqj51uoTr8pbp7vB2inTrmObiYrSLUHJ=c9DaMRwsCikw@mail.gmail.com>
References:  <201903110127.x2B1R2as090886@repo.freebsd.org> <5c85c429.1c69fb81.1869f.e87bSMTPIN_ADDED_BROKEN@mx.google.com> <CANCZdfqj51uoTr8pbp7vB2inTrmObiYrSLUHJ=c9DaMRwsCikw@mail.gmail.com>

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

>
> On Sun, Mar 10, 2019 at 8:12 PM Rodney W. Grimes  
> <freebsd@gndrsh.dnsmgr.net> wrote:
>>> Author: avos
>>
>>> Date: Mon Mar 11 01:27:01 2019
>>
>>> New Revision: 344990
>>
>>> URL: https://svnweb.freebsd.org/changeset/base/344990
>>
>>>
>>
>>> Log:
>>
>>>   Fix ieee80211_radiotap(9) usage in wireless drivers:
>>
>>>
>>
>>>   - Alignment issues:
>>
>>>    * Add missing __packed attributes + padding across all drivers; in
>>
>>>   most places there was an assumption that padding will be always
>>
>>>   minimally suitable; in few places - e.g., in urtw(4) / rtwn(4) -
>>
>>>   padding was just missing.
>>
>>>    * Add __aligned(8) attribute for all Rx radiotap headers since they  
>>> can
>>
>>>   contain 64-bit TSF timestamp; it cannot appear in Tx radiotap  
>>> headers, so
>>
>>>   just drop the attribute here. Refresh ieee80211_radiotap(9) man page
>>
>>>   accordingly.
>>
>>>
>>
>>>   - Since net80211 automatically updates channel frequency / flags in
>>
>>>   ieee80211_radiotap_chan_change() drop duplicate setup for these  
>>> fields
>>
>>>   in drivers.
>>
>>>
>>
>>>   Tested with Netgear WG111 v3 (urtw(4)), STA mode.
>>
>>>
>>
>>>   MFC after:  2 weeks
>>
>>
>>
>> Isnt this going to seriously break module load compatibility
>>
>> due to struct size and alignment changes if you merge this to stable/12?
>
> It looks like all these changes are within the modules, not in the  
> KBI... It looks like this will make things work >better on architectures  
> that don't like unaligned accesses. It seems like modules that aren't  
> updated don't work today >on those architectures...

Yes, only drivers are touched - updated structures and
driver's softc (where they are stored) are not exposed
to other modules, so there is no need to keep size /
offsets for structure members + the commit removes
unaligned access, so urtw(4) (for example) will not work
without this change on architectures, where unaligned
access is prohibited.

>
>
> Warner
>
>>
>>> Modified:
>>
>>>   head/share/man/man9/ieee80211_radiotap.9
>>
>>>   head/sys/dev/ath/if_athioctl.h
>>
>>>   head/sys/dev/bwi/if_bwi.c
>>
>>>   head/sys/dev/bwi/if_bwivar.h
>>
>>>   head/sys/dev/bwn/if_bwn.c
>>
>>>   head/sys/dev/bwn/if_bwnvar.h
>>
>> ...
>>
>>
>>
>>
>>
>> --
>> Rod Grimes                                                  
>> rgrimes@freebsd.org
>>
>>
>>



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