[dpdk-dev] [PATCH 00/13] net/sfc: fix device reconfigure

Andrew Rybchenko arybchenko at solarflare.com
Fri Mar 31 12:22:10 CEST 2017


When I implemented initial version of the driver I had incorrect
understanding of the required state transition to reconfigure
device. It was assumed that close is required before reconfigure.
Looking at description in rte_ethdev.h, rte_eth_dev_close()
description and rte_eth_dev_configure() implementation I see that
I was wrong.

If reconfigure attempt is done without the patch series, testpmd
crashes on segmentation fault. The patch series fixes it. So,
technically it is a bug fix, but unfortunately pretty big.

The patch series should be applied after [1] (patch [2]).

Testing the patch requires [3] (patch [4]). Intel compilation of
the patch fails since it is applied to dpdk.git tree instead of
dpdk-next-net.git.

[1] http://dpdk.org/ml/archives/dev/2017-March/062155.html
[2] http://dpdk.org/dev/patchwork/patch/22758/
[3] http://dpdk.org/ml/archives/dev/2017-March/062157.html
[4] http://dpdk.org/dev/patchwork/patch/22756/

Andrew Rybchenko (13):
  net/sfc: clarify interrupts support function names
  net/sfc: bind EvQ DMA space to EvQ type and type-local index
  net/sfc: remove unused max entries from EvQ info
  net/sfc: move EvQ entries to the EvQ control structure
  net/sfc: remove flags from EvQ info
  net/sfc: remove EvQ info array to simplify reconfigure
  net/sfc: move event support init to attach stage
  net/sfc: initialize port data on attach
  net/sfc: clarify Rx subsystem configure/close function names
  net/sfc: clarify Tx subsystem configure/close function names
  net/sfc: support changing the number of receive queues
  net/sfc: support changing the number of transmit queues
  net/sfc: fix device reconfigure

 drivers/net/sfc/sfc.c        |  67 ++++++++-------
 drivers/net/sfc/sfc.h        |  41 +++++-----
 drivers/net/sfc/sfc_ethdev.c |   2 -
 drivers/net/sfc/sfc_ev.c     | 191 +++++++++++++++----------------------------
 drivers/net/sfc/sfc_ev.h     |  69 +++++-----------
 drivers/net/sfc/sfc_intr.c   |   6 +-
 drivers/net/sfc/sfc_port.c   |  32 ++++++--
 drivers/net/sfc/sfc_rx.c     | 113 ++++++++++++++++---------
 drivers/net/sfc/sfc_rx.h     |   4 +-
 drivers/net/sfc/sfc_tx.c     | 103 +++++++++++++++--------
 drivers/net/sfc/sfc_tx.h     |   4 +-
 11 files changed, 322 insertions(+), 310 deletions(-)

-- 
2.9.3



More information about the dev mailing list