Date: Mon, 11 Mar 2019 09:18:05 -0700 (PDT) From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net> To: Andriy Voskoboinyk <avos@freebsd.org> Cc: "Rodney W. Grimes" <rgrimes@freebsd.org>, 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: <201903111618.x2BGI5vm010296@ gndrsh.dnsmgr.net> In-Reply-To: <op.zyhds3qn4dikkl@localhost>
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. Thanks for the comfirmation. > > 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 -- Rod Grimes rgrimes@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201903111618.x2BGI5vm010296>