svn commit: r293112 - head/sys/dev/ixl
John Baldwin
jhb at freebsd.org
Mon Jan 4 14:56:56 UTC 2016
On Sunday, January 03, 2016 06:09:47 PM Garrett Cooper wrote:
> Author: ngie
> Date: Sun Jan 3 18:09:46 2016
> New Revision: 293112
> URL: https://svnweb.freebsd.org/changeset/base/293112
>
> Log:
> Fix ixl(4) compilation with PCI_IOV pre-r266974
>
> stable/10 doesn't have the if_getdrvflags(9) KPI. Reference the field in the
> structure directly if the __FreeBSD_version is < 1100022, so the driver can
> be built with PCI_IOV support on stable/10, without backporting all of
> r266974 (which requires additional changes due to projects/ifnet, etc)
>
> Differential Revision: https://reviews.freebsd.org/D4759
> Reviewed by: erj, sbruno
> Sponsored by: EMC / Isilon Storage Division
>
> Modified:
> head/sys/dev/ixl/if_ixl.c
>
> Modified: head/sys/dev/ixl/if_ixl.c
> ==============================================================================
> --- head/sys/dev/ixl/if_ixl.c Sun Jan 3 17:58:11 2016 (r293111)
> +++ head/sys/dev/ixl/if_ixl.c Sun Jan 3 18:09:46 2016 (r293112)
> @@ -6606,7 +6606,11 @@ ixl_iov_uninit(device_t dev)
> pf->veb_seid = 0;
> }
>
> +#if __FreeBSD_version > 1100022
> if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0)
> +#else
> + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0)
> +#endif
> ixl_disable_intr(vsi);
FWIW, it is probably simpler to do something like this in an ixl header instead:
#if __FreeBSD_version <= 1100022
#define if_getdrvflags(ifp) (ifp)->if_drv_flags
#endif
In the past when the Intel drivers have used compat shims they have preferred this
method (defining compat macros for "new" APIs on old OS versions) instead of using
#ifdef's in the code itself.
--
John Baldwin
More information about the svn-src-all
mailing list