svn commit: r283620 - in stable/10/sys: amd64/conf conf dev/ixgbe modules modules/ix modules/ixv

John Baldwin jhb at freebsd.org
Thu May 28 16:27:13 UTC 2015


On Thursday, May 28, 2015 04:23:49 PM Eric Joyner wrote:
> Ok; I'm working on it now. I've implemented your recommendation for an
> ixgbe stub that loads both if_ix and if_ixv, but Jack offered an
> alternative of just letting sys/dev/ixgbe/Makefile make an if_ixgbe module
> that combines if_ix and if_ixv. Looking at conf files for other
> architectures, it sounds like it would be a better idea to just do that for
> stable/10, and completely remove the ix and ixv Makefiles and module
> directories. I don't think anyone really cares to have a separate if_ix and
> if_ixv modules over just one if_ixgbe module.

I probably prefer that you do actually have if_ix and if_ixv.  There's always
the ifconfig hack for NIC drivers that wants to autoload if_<foo>.ko to
consider.  I think it is also more friendly to users if 10 supports both the
old and new models as it gives them more time to transition.  However,
reverting back to a single if_ixgbe.ko is also ok.

> On Thu, May 28, 2015 at 8:49 AM John Baldwin <john at baldwin.cx> wrote:
> 
> > On Wednesday, May 27, 2015 05:44:12 PM Eric Joyner wrote:
> > > Author: erj
> > > Date: Wed May 27 17:44:11 2015
> > > New Revision: 283620
> > > URL: https://svnweb.freebsd.org/changeset/base/283620
> > >
> > > Log:
> > >   MFC ixgbe commits for 10.2:
> > >
> > >   - r280182 - Split the driver into independent pf/vf loadables
> > >   - r280197 - Resolve build issues
> > >   - r280204 - Fix multiple same-name devclasses
> > >   - r280228 - Fix i386 LINT build issues / remove unused variable
> > >   - r280252 - Fix building ixgbe with gcc
> > >   - r280962 - Make changes to busdma code similar to r257541
> > >   - r281772 & r281773 - Remove unused variable
> > >   - partial r282280 - stats counter update (ix-only)
> > >   - r282289 - Add X550 support
> > >   - r282290 - Add X550 makefile updates
> > >   - r282293 - Add ixgbe_x550.c to conf/files
> > >   - r282299 - Fix gcc compile (extraneous extern declaration)
> > >
> > >   Finally, add ix_txrx.c to conf/files because it's required for compile
> > in stable/10.
> >
> > FYI, this has broken 'make tinderbox' for all 32-bit kernels that include
> > ix or ixgbe:
> >
> > /usr/home/john/work/freebsd/stable/10/sys/dev/ixgbe/if_ix.c:2494:21:
> > error: impl
> > icit conversion from 'unsigned long long' to 'u_long' (aka 'unsigned
> > long') chan
> > ges value from 10000000000 to 1410065408 [-Werror,-Wconstant-conversion]
> >         ifp->if_baudrate = IF_Gbps(10);
> >                          ~ ^~~~~~~~~~~
> > /usr/home/john/work/freebsd/stable/10/sys/net/if.h:187:21: note: expanded
> > from m
> > acro 'IF_Gbps'
> > #define IF_Gbps(x)      (IF_Mbps((x) * 1000))   /* gigabits/sec. */
> >                          ^~~~~~~~~~~~~~~~~~~
> > /usr/home/john/work/freebsd/stable/10/sys/net/if.h:186:21: note: expanded
> > from m
> > acro 'IF_Mbps'
> > #define IF_Mbps(x)      (IF_Kbps((x) * 1000))   /* megabits/sec. */
> >                          ^~~~~~~~~~~~~~~~~~~
> > /usr/home/john/work/freebsd/stable/10/sys/net/if.h:185:36: note: expanded
> > from macro 'IF_Kbps'
> > #define IF_Kbps(x)      ((uintmax_t)(x) * 1000) /* kilobits/sec. */
> >                          ~~~~~~~~~~~~~~~^~~~~~
> > 1 error generated.
> > *** [if_ix.o] Error code 1
> >
> > On 10.x you need to use if_initbaudrate() instead of setting if_baudrate
> > directly.
> >
> > --
> > John Baldwin
> >
> >


-- 
John Baldwin


More information about the svn-src-all mailing list