ACKish/Cmnt: [Bionic][PULL] sfc: patches for LP#1836635

Mauricio Faria de Oliveira mfo at canonical.com
Fri Jul 19 15:32:16 UTC 2019


On Fri, Jul 19, 2019 at 12:19 PM Stefan Bader
<stefan.bader at canonical.com> wrote:
>
> On 15.07.19 22:09, Mauricio Faria de Oliveira wrote:
> > BugLink: https://bugs.launchpad.net/bugs/1836635
> >
> > [Impact]
> >
> >  * Support for Solarflare X2542 network adapter
> >    (Medford2 / SFC9250) in the sfc driver.
> >
> >  * This network adapter is present on recent hardware,
> >    at least HP 2019 and Dell PowerEdge R740xd systems.
> >
> >  * On recent-hardware deployments that would rather use
> >    the Bionic LTS / GA supported kernel and cannot move
> >    to HWE kernels this adapter is non functional at all.
> >
> > [Test Case]
> >
> >  * The X2542 adapter has been exercised with iperf3 and nc
> >    across 2 hosts on 25G link speed w/ MTUs 1400/1500/9000
> >    on both directions, for 1 week.
> >
> >    Its performance is on par with the Cosmic 4.18 kernel
> >    (which contains all these patches) and the out-of-tree
> >    driver from the vendor.
> >
> >  * The 7000 series adapter (for regression testing an old model,
> >    supported previously) has been exercised with iperf and netperf
> >    (TCP_STREAM, UDP_STREAM, TCP_RR, UDP_RR, and TCP_CRR) in one
> >    host (client/server in different adapter ports isolated with
> >    network namespaces, so traffic goes through the network switch),
> >    on 10G link speed on MTUs 1500/9000, for 1 weekend.
> >
> >    No regressions observed between the original and test kernels.
> >
> > [Regression Potential]
> >
> >  * The patchset touches a lot of the sfc driver, so the potential
> >    for regression definitely exists. Thus, a lot of consideration
> >    and testing happened:
> >
> >  * It has been tested on other adapter which uses the old code,
> >    and no regressions were found so far (see 7000 series above).
> >
> >  * The patchset is exclusively cherry-picks, no single backport.
> >
> >  * The patchset essentially moves the Bionic driver up in the
> >    upstream 'git log --oneline -- drivers/net/ethernet/sfc/':
> >
> >    - since commit d4a7a8893d4c ("sfc: pass valid pointers from efx_enqueue_unwind")
> >    - until commit 7f61e6c6279b ("sfc: support FEC configuration through ethtool")
> >    - except for 2 commits (not needed / unrelated)
> >      - commit 42356d9a137b ("sfc: support RSS spreading of ethtool ntuple filters")
> >      - commit 9baeb5eb1f83 ("sfc: falcon: remove duplicated bit-wise or of LOOPBACK_SGMII")
> >    - plus 2 more recent commits (fixes)
> >      - commit 458bd99e4974 ("sfc: remove ctpio_dmabuf_start from stats")
> >      - commit 0c235113b3c4 ("sfc: stop the TX queue before pushing new buffers")
> >
> > ---
> >
> > The following changes since commit 6be28bb37c80aa9365eee74646f4138b9aee3295:
> >
> >   powerpc/pseries: Fix unitialized timer reset on migration (2019-07-12 08:36:18 -0700)
> >
> > are available in the Git repository at:
> >
> >   https://git.launchpad.net/~mfo/+git/bionic-linux lp1836635
> >
> > for you to fetch changes up to 980682f7783b476a6d77f3a1a4ff0e6728bac515:
> >
> >   sfc: stop the TX queue before pushing new buffers (2019-07-15 16:17:16 -0300)
> >
> > ----------------------------------------------------------------
> > Bert Kenward (6):
> >       sfc: update EF10 register definitions
> >       sfc: populate the timer reload field
> >       sfc: expose CTPIO stats on NICs that support them
> >       sfc: remove tx and MCDI handling from NAPI budget consideration
> >       sfc: add suffix to large constant in ptp
> >       sfc: remove ctpio_dmabuf_start from stats
> >
> > Edward Cree (14):
> >       sfc: make mem_bar a function rather than a constant
> >       sfc: support VI strides other than 8k
> >       sfc: add Medford2 (SFC9250) PCI Device IDs
> >       sfc: improve PTP error reporting
> >       sfc: update MCDI protocol headers
> >       sfc: support variable number of MAC stats
> >       sfc: expose FEC stats on Medford2
> >       sfc: basic MCDI mapping of 25/50/100G link speeds
> >       sfc: support the ethtool ksettings API properly so that 25/50/100G works
> >       sfc: add bits for 25/50/100G supported/advertised speeds
> >       sfc: on 8000 series use TX queues for TX timestamps
> >       sfc: support second + quarter ns time format for receive datapath
> >       sfc: update MCDI protocol headers
> >       sfc: support FEC configuration through ethtool
> >
> > Laurence Evans (3):
> >       sfc: simplify RX datapath timestamping
> >       sfc: support separate PTP and general timestamping
> >       sfc: support Medford2 frequency adjustment format
> >
> > Martin Habets (7):
> >       sfc: handle TX timestamps in the normal data path
> >       sfc: add function to determine which TX timestamping method to use
> >       sfc: use main datapath for HW timestamps if available
> >       sfc: only enable TX timestamping if the adapter is licensed for it
> >       sfc: MAC TX timestamp handling on the 8000 series
> >       sfc: only advertise TX timestamping if we have the license for it
> >       sfc: stop the TX queue before pushing new buffers
> >
> > kbuild test robot (1):
> >       sfc: mark some unexported symbols as static
> >
> >  drivers/net/ethernet/sfc/ef10.c       |  361 ++-
> >  drivers/net/ethernet/sfc/ef10_regs.h  |   46 +-
> >  drivers/net/ethernet/sfc/efx.c        |   66 +-
> >  drivers/net/ethernet/sfc/efx.h        |    9 +-
> >  drivers/net/ethernet/sfc/ethtool.c    |   38 +-
> >  drivers/net/ethernet/sfc/farch.c      |   26 +-
> >  drivers/net/ethernet/sfc/io.h         |   19 +-
> >  drivers/net/ethernet/sfc/mcdi.h       |    3 +
> >  drivers/net/ethernet/sfc/mcdi_pcol.h  | 4859 ++++++++++++++++++++++++++-------
> >  drivers/net/ethernet/sfc/mcdi_port.c  |  318 ++-
> >  drivers/net/ethernet/sfc/net_driver.h |   41 +-
> >  drivers/net/ethernet/sfc/nic.h        |   27 +
> >  drivers/net/ethernet/sfc/ptp.c        |  370 ++-
> >  drivers/net/ethernet/sfc/siena.c      |   12 +-
> >  drivers/net/ethernet/sfc/tx.c         |   54 +-
> >  15 files changed, 4976 insertions(+), 1273 deletions(-)
> >
> Personally I hate those huge piles of changes going into a stable release to
> make HW work which did not exist at the time of release. But I also know that in
> the end my opinion will not matter. So just be mindful that you will be the
> prime contact to be handed back all the pieces should this go off.
>

I think similarly. Yes, 'ack'.  ;- )

> Acked-by: Stefan Bader <stefan.bader at canonical.com>
>


-- 
Mauricio Faria de Oliveira



More information about the kernel-team mailing list