[dpdk-dev] [PATCH v4 0/5] increase port_id range

Zhiyong Yang zhiyong.yang at intel.com
Thu Sep 21 10:32:38 CEST 2017


port_id is currently defined as uint8_t, which is limited to the range
0 to 255. A larger range is required for vdev scalability.

It is necessary for a redefinition of port_id to extend it from
1 bytes to 2 bytes. All ethdev APIs and usages related to port_id will
be changed at the same time.

Discussion about port_id is the following thread.
http://www.dpdk.org/dev/patchwork/patch/23208/

Changes in V2:
1. cover more PMDs to increase port_id range.
2. cover more examples to increase port_id range.
3. add 17.11 release note.

Changes in V3:
1.  cover mlx4 and mlx5.
2.  add to increase port_id range in test code.
3.  The patch "librte_mbuf: modify port initialization value" is merged
    into the patchset.

Changes in V4:
1.  Add a patch to remove bonding APIs using ABI versioning according to
    Ferruh's comments.
2.  Unify to use typedef portid_t in testpmd code.
3.  Update release note and deprecation doc in 2/5
4.  Fix some issues according to comments.

Note: 3/5 and 4/5 patches' compilling depends on 2/5 patch since 2/5 patch
breaks lib/PMD API/ABI.

Zhiyong Yang (5):
  net/bonding: remove bonding APIs using ABI versioning
  ethdev: increase port_id range
  examples: increase port_id range
  test: increase port_id range
  librte_mbuf: modify port initialization value

 app/pdump/main.c                                   |   2 +-
 app/test-pmd/cmdline.c                             |   6 +-
 app/test-pmd/config.c                              |   4 +-
 app/test-pmd/ieee1588fwd.c                         |  26 +--
 app/test-pmd/parameters.c                          |   2 +-
 app/test-pmd/rxonly.c                              |   2 +-
 app/test-pmd/testpmd.c                             |  18 +-
 app/test-pmd/testpmd.h                             |   4 +-
 doc/guides/rel_notes/deprecation.rst               |   6 -
 doc/guides/rel_notes/release_17_11.rst             |  18 +-
 drivers/net/af_packet/Makefile                     |   2 +-
 drivers/net/af_packet/rte_eth_af_packet.c          |   2 +-
 drivers/net/ark/ark_ethdev.c                       |   2 +-
 drivers/net/avp/Makefile                           |   2 +-
 drivers/net/avp/avp_ethdev.c                       |   2 +-
 drivers/net/bnx2x/Makefile                         |   2 +-
 drivers/net/bnx2x/bnx2x_rxtx.h                     |   4 +-
 drivers/net/bnxt/Makefile                          |   2 +-
 drivers/net/bnxt/bnxt.h                            |   2 +-
 drivers/net/bnxt/bnxt_ethdev.c                     |   4 +-
 drivers/net/bnxt/bnxt_rxq.h                        |   2 +-
 drivers/net/bnxt/bnxt_txq.h                        |   2 +-
 drivers/net/bnxt/rte_pmd_bnxt.c                    |  32 +--
 drivers/net/bnxt/rte_pmd_bnxt.h                    |  32 +--
 drivers/net/bonding/Makefile                       |   2 +-
 drivers/net/bonding/rte_eth_bond.h                 |  42 ++--
 drivers/net/bonding/rte_eth_bond_8023ad.c          | 193 +++--------------
 drivers/net/bonding/rte_eth_bond_8023ad.h          |  48 ++--
 drivers/net/bonding/rte_eth_bond_8023ad_private.h  |  12 +-
 drivers/net/bonding/rte_eth_bond_alb.c             |   6 +-
 drivers/net/bonding/rte_eth_bond_alb.h             |   6 +-
 drivers/net/bonding/rte_eth_bond_api.c             |  64 +++---
 drivers/net/bonding/rte_eth_bond_args.c            |   2 +-
 drivers/net/bonding/rte_eth_bond_pmd.c             |  62 +++---
 drivers/net/bonding/rte_eth_bond_private.h         |  45 ++--
 drivers/net/bonding/rte_eth_bond_version.map       |   4 -
 drivers/net/e1000/Makefile                         |   2 +-
 drivers/net/e1000/em_ethdev.c                      |   2 +-
 drivers/net/e1000/em_rxtx.c                        |   4 +-
 drivers/net/e1000/igb_rxtx.c                       |   4 +-
 drivers/net/failsafe/Makefile                      |   2 +-
 drivers/net/failsafe/failsafe_ether.c              |   4 +-
 drivers/net/failsafe/failsafe_private.h            |   4 +-
 drivers/net/fm10k/Makefile                         |   2 +-
 drivers/net/fm10k/fm10k.h                          |   6 +-
 drivers/net/i40e/Makefile                          |   2 +-
 drivers/net/i40e/i40e_ethdev.c                     |   5 +-
 drivers/net/i40e/i40e_rxtx.h                       |   4 +-
 drivers/net/i40e/rte_pmd_i40e.c                    |  50 ++---
 drivers/net/i40e/rte_pmd_i40e.h                    |  48 ++--
 drivers/net/ixgbe/Makefile                         |   2 +-
 drivers/net/ixgbe/ixgbe_ethdev.c                   |   5 +-
 drivers/net/ixgbe/ixgbe_rxtx.h                     |   4 +-
 drivers/net/ixgbe/rte_pmd_ixgbe.c                  |  60 ++---
 drivers/net/ixgbe/rte_pmd_ixgbe.h                  |  64 +++---
 drivers/net/mlx5/mlx5_rxtx.h                       |   4 +-
 drivers/net/nfp/nfp_net.c                          |  16 +-
 drivers/net/nfp/nfp_net_pmd.h                      |   2 +-
 drivers/net/null/Makefile                          |   2 +-
 drivers/net/null/rte_eth_null.c                    |   2 +-
 drivers/net/pcap/Makefile                          |   2 +-
 drivers/net/pcap/rte_eth_pcap.c                    |   2 +-
 drivers/net/qede/qede_if.h                         |   2 +-
 drivers/net/ring/rte_eth_ring.c                    |   2 +-
 drivers/net/szedata2/rte_eth_szedata2.c            |   2 +-
 drivers/net/thunderx/nicvf_struct.h                |   2 +-
 drivers/net/vhost/Makefile                         |   2 +-
 drivers/net/vhost/rte_eth_vhost.c                  |   6 +-
 drivers/net/vhost/rte_eth_vhost.h                  |   4 +-
 drivers/net/virtio/Makefile                        |   2 +-
 drivers/net/virtio/virtio_pci.h                    |   2 +-
 drivers/net/virtio/virtio_rxtx.h                   |   6 +-
 drivers/net/vmxnet3/vmxnet3_ring.h                 |   4 +-
 examples/bond/main.c                               |  16 +-
 examples/distributor/main.c                        |  26 +--
 examples/exception_path/main.c                     |  35 ++-
 examples/ip_fragmentation/main.c                   |  33 +--
 examples/ip_pipeline/init.c                        |   4 +-
 examples/ip_reassembly/main.c                      |  34 +--
 examples/ipv4_multicast/main.c                     |  30 +--
 examples/kni/main.c                                |  30 +--
 examples/l2fwd-cat/l2fwd-cat.c                     |  12 +-
 examples/l2fwd-jobstats/main.c                     |  34 +--
 examples/l2fwd-keepalive/main.c                    |  50 ++---
 examples/l2fwd/main.c                              |  47 ++--
 examples/l3fwd-acl/main.c                          |   9 +-
 examples/l3fwd-power/main.c                        |  60 ++---
 examples/l3fwd-vf/main.c                           |  50 +++--
 examples/l3fwd/l3fwd.h                             |  10 +-
 examples/l3fwd/l3fwd_common.h                      |   2 +-
 examples/l3fwd/l3fwd_em.c                          |   2 +-
 examples/l3fwd/l3fwd_em.h                          |   6 +-
 examples/l3fwd/l3fwd_em_hlm.h                      |  14 +-
 examples/l3fwd/l3fwd_lpm.c                         |  15 +-
 examples/l3fwd/l3fwd_lpm.h                         |   4 +-
 examples/l3fwd/l3fwd_lpm_neon.h                    |   4 +-
 examples/l3fwd/l3fwd_lpm_sse.h                     |   4 +-
 examples/l3fwd/main.c                              |  30 +--
 examples/link_status_interrupt/main.c              |   9 +-
 examples/load_balancer/config.c                    |  14 +-
 examples/load_balancer/init.c                      |  34 ++-
 examples/load_balancer/main.h                      |  11 +-
 examples/load_balancer/runtime.c                   |  12 +-
 .../client_server_mp/mp_client/client.c            |  17 +-
 .../client_server_mp/mp_server/args.c              |   4 +-
 .../client_server_mp/mp_server/args.h              |   2 +-
 .../client_server_mp/mp_server/init.c              |  11 +-
 .../client_server_mp/mp_server/main.c              |   2 +-
 .../multi_process/client_server_mp/shared/common.h |   4 +-
 examples/multi_process/l2fwd_fork/main.c           |  23 +-
 examples/netmap_compat/lib/compat_netmap.c         |  52 +++--
 examples/netmap_compat/lib/compat_netmap.h         |   2 +-
 examples/packet_ordering/main.c                    |  19 +-
 examples/performance-thread/l3fwd-thread/main.c    | 143 ++++++------
 examples/ptpclient/ptpclient.c                     |   4 +-
 examples/qos_sched/args.c                          |  12 +-
 examples/qos_sched/init.c                          |  31 +--
 examples/qos_sched/main.c                          |  14 +-
 examples/qos_sched/main.h                          |  24 +-
 examples/qos_sched/stats.c                         |  16 +-
 examples/quota_watermark/qw/init.c                 |   4 +-
 examples/quota_watermark/qw/main.c                 |  10 +-
 examples/rxtx_callbacks/main.c                     |   8 +-
 examples/server_node_efd/server/main.c             |   2 +-
 examples/server_node_efd/shared/common.h           |   4 +-
 examples/skeleton/basicfwd.c                       |  12 +-
 examples/vhost/main.c                              |  10 +-
 lib/librte_bitratestats/Makefile                   |   2 +-
 lib/librte_bitratestats/rte_bitrate.c              |   2 +-
 lib/librte_bitratestats/rte_bitrate.h              |   2 +-
 lib/librte_ether/Makefile                          |   2 +-
 lib/librte_ether/rte_ethdev.c                      | 241 +++++++++++----------
 lib/librte_ether/rte_ethdev.h                      | 238 ++++++++++----------
 lib/librte_ether/rte_flow.c                        |   2 +-
 lib/librte_ether/rte_flow_driver.h                 |   2 +-
 lib/librte_ether/rte_tm.c                          |  62 +++---
 lib/librte_ether/rte_tm.h                          |  60 ++---
 lib/librte_ether/rte_tm_driver.h                   |   2 +-
 lib/librte_kni/Makefile                            |   2 +-
 lib/librte_kni/rte_kni.h                           |   6 +-
 lib/librte_latencystats/rte_latencystats.c         |  12 +-
 lib/librte_mbuf/rte_mbuf.c                         |   2 +-
 lib/librte_mbuf/rte_mbuf.h                         |   4 +-
 lib/librte_pdump/Makefile                          |   2 +-
 lib/librte_pdump/rte_pdump.c                       |  16 +-
 lib/librte_pdump/rte_pdump.h                       |   4 +-
 lib/librte_port/Makefile                           |   2 +-
 lib/librte_port/rte_port_ethdev.c                  |   6 +-
 lib/librte_port/rte_port_ethdev.h                  |   6 +-
 test/test/test_kni.c                               |  12 +-
 test/test/test_link_bonding.c                      |  40 ++--
 test/test/test_link_bonding_mode4.c                |  12 +-
 test/test/test_pmd_perf.c                          |  30 +--
 test/test/test_pmd_ring_perf.c                     |   2 +-
 test/test/virtual_pmd.c                            |  24 +-
 test/test/virtual_pmd.h                            |  28 +--
 156 files changed, 1402 insertions(+), 1498 deletions(-)

-- 
2.13.3



More information about the dev mailing list