On Mon, Apr 09, 2018 at 03:32:50PM +0000, Brooks Davis wrote: > On Mon, Apr 09, 2018 at 01:58:49PM +0000, Glen Barber wrote: > > On Sun, Apr 08, 2018 at 04:54:07PM +0000, Brooks Davis wrote: > > > Author: brooks > > > Date: Sun Apr 8 16:54:07 2018 > > > New Revision: 332288 > > > URL: https://svnweb.freebsd.org/changeset/base/332288 > > > > > > Log: > > > MFC r331797: > > > > > > Use an accessor function to access ifr_data. > > > > > > This fixes 32-bit compat (no ioctl command defintions are required > > > as struct ifreq is the same size). > > > > > > Reviewed by: kib > > > Obtained from: CheriBSD > > > Sponsored by: DARPA, AFRL > > > Differential Revision: https://reviews.freebsd.org/D14900 > > > > > > Modified: > > [...] > > > stable/11/sys/dev/wl/if_wl.c > > > > > Directory Properties: > > > stable/11/ (props changed) > > > > > [...] > > > Modified: stable/11/sys/dev/wl/if_wl.c > > > ============================================================================== > > > --- stable/11/sys/dev/wl/if_wl.c Sun Apr 8 16:46:24 2018 > > > (r332287) > > > +++ stable/11/sys/dev/wl/if_wl.c Sun Apr 8 16:54:07 2018 > > > (r332288) > > > @@ -1313,7 +1313,7 @@ wlioctl(struct ifnet *ifp, u_long cmd, caddr_t data) > > > } > > > WL_UNLOCK(sc); > > > > > > - error = copyout(psa_buf, ifr->ifr_data, sizeof(psa_buf)); > > > + error = copyout(psa_buf, ifr_data_get_ptr(ifr), sizeof(psa_buf)); > > > break; > > > > > > > > > @@ -1323,7 +1323,7 @@ wlioctl(struct ifnet *ifp, u_long cmd, caddr_t data) > > > if ((error = priv_check(td, PRIV_DRIVER))) > > > break; > > > > > > - error = copyin(ifr->ifr_data, psa_buf, sizeof(psa_buf)); > > > + error = copyin(ifr_data_get_ptr(ifr), psa_buf, sizeof(psa_buf)); > > > if (error) > > > break; > > > > > > @@ -1357,7 +1357,7 @@ wlioctl(struct ifnet *ifp, u_long cmd, caddr_t data) > > > /* get the current NWID out of the sc since we stored it there */ > > > case SIOCGWLCNWID: > > > WL_LOCK(sc); > > > - ifr->ifr_data = (caddr_t) (sc->nwid[0] << 8 | sc->nwid[1]); > > > + ifr_data_get_ptr(ifr) = (caddr_t) (sc->nwid[0] << 8 | sc->nwid[1]); > > > WL_UNLOCK(sc); > > > break; > > > > > > > This part of the change appears to have broken i386 with the following: > > Sorry about this, will fix shortly.
Fixed in r332331. -- Brooks
signature.asc
Description: PGP signature