svn commit: r332288 - in stable/11/sys: dev/an dev/ath dev/cxgbe dev/de dev/en dev/fatm dev/hatm dev/if_ndis dev/iwi dev/ixgbe dev/ixl dev/mlx4/mlx4_en dev/mlx5/mlx5_en dev/mwl dev/nxge dev/oce dev...

Brooks Davis brooks at freebsd.org
Mon Apr 9 15:32:52 UTC 2018


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.

-- Brooks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20180409/f5df8907/attachment.sig>


More information about the svn-src-all mailing list