DPDK patches and discussions
 help / color / mirror / Atom feed
From: Zhiyong Yang <zhiyong.yang@intel.com>
To: dev@dpdk.org
Cc: ferruh.yigit@intel.com, thomas@monjalon.net
Subject: [dpdk-dev] [PATCH v6 0/5] increase port_id range
Date: Fri, 29 Sep 2017 15:17:22 +0800	[thread overview]
Message-ID: <20170929071727.21618-1-zhiyong.yang@intel.com> (raw)
In-Reply-To: <20170925032231.72897-1-zhiyong.yang@intel.com>

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 deprecation doc in 2/5
4.  fix some issues according to comments.

Changes in V5:
1.  For 1/5, bond_mode_8023ad_conf_get_v1708() and bond_mode_8023ad_conf
    _get() are merged into one function bond_mode_8023ad_conf_get.

Changes in V6:
1.  For 2/5, remove the unnecessary LIBABIVER in Makefile and update
    the release notes "Shared Library Versions".
    Note: The patchset have dependency on the following patch.
    http://www.dpdk.org/dev/patchwork/patch/28738/
    http://www.dpdk.org/dev/patchwork/patch/29219/

Note: 3/5 and 4/5 patches' building 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             |  24 +-
 drivers/net/af_packet/rte_eth_af_packet.c          |   2 +-
 drivers/net/ark/ark_ethdev.c                       |   2 +-
 drivers/net/avp/avp_ethdev.c                       |   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                 |  41 ++--
 drivers/net/bonding/rte_eth_bond_8023ad.c          | 203 +++--------------
 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/em_ethdev.c                      |   2 +-
 drivers/net/e1000/em_rxtx.c                        |   4 +-
 drivers/net/e1000/igb_rxtx.c                       |   4 +-
 drivers/net/failsafe/failsafe_ether.c              |   4 +-
 drivers/net/failsafe/failsafe_private.h            |   4 +-
 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/rte_eth_null.c                    |   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/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/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/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 +--
 145 files changed, 1394 insertions(+), 1499 deletions(-)

-- 
2.13.3

  parent reply	other threads:[~2017-09-29  7:17 UTC|newest]

Thread overview: 101+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-09  8:42 [dpdk-dev] [PATCH 0/2] " Zhiyong Yang
2017-08-09  8:42 ` [dpdk-dev] [PATCH 1/2] ethdev: " Zhiyong Yang
2017-08-09 12:52   ` Ferruh Yigit
2017-08-09 12:57     ` Wiles, Keith
2017-08-10  0:53       ` Yang, Zhiyong
2017-08-10  0:51     ` Yang, Zhiyong
2017-08-09  8:42 ` [dpdk-dev] [PATCH 2/2] examples: " Zhiyong Yang
2017-08-09 14:48   ` Stephen Hemminger
2017-08-10  1:03     ` Yang, Zhiyong
2017-08-09  9:00 ` [dpdk-dev] [PATCH 0/2] " De Lara Guarch, Pablo
2017-08-09  9:17   ` Yang, Zhiyong
2017-09-04  5:57 ` [dpdk-dev] [PATCH v2 0/4] " Zhiyong Yang
2017-09-04  5:57   ` [dpdk-dev] [PATCH v2 1/4] ethdev: " Zhiyong Yang
2017-09-04  9:06     ` Bruce Richardson
2017-09-04  9:29       ` Ferruh Yigit
2017-09-04  9:47         ` Yang, Zhiyong
2017-09-04 13:12           ` Adrien Mazarguil
2017-09-04 13:17             ` Richardson, Bruce
2017-09-04 13:36               ` Adrien Mazarguil
2017-09-04 13:59                 ` Yang, Zhiyong
2017-09-04 14:41                   ` Adrien Mazarguil
2017-09-05  6:51       ` Yang, Zhiyong
2017-09-06  8:32     ` Hemant Agrawal
2017-09-06  8:48       ` Yang, Zhiyong
     [not found]     ` <CALZ3Guikt9x8sz-oEKCuDCSp_wtKa64bSXTrMhqcWyg7f_dS7g@mail.gmail.com>
2017-09-07  0:45       ` Yang, Zhiyong
2017-09-04  5:57   ` [dpdk-dev] [PATCH v2 2/4] examples: " Zhiyong Yang
2017-09-04 14:15     ` Hunt, David
2017-09-04 15:01       ` Yang, Zhiyong
2017-09-04  5:57   ` [dpdk-dev] [PATCH v2 3/4] common_base: extend RTE_MAX_ETHPORTS from 32 to 1024 Zhiyong Yang
2017-09-04  7:46     ` Yao, Lei A
2017-09-04  7:59       ` Yang, Zhiyong
2017-09-04  9:09         ` Bruce Richardson
2017-09-04 10:05           ` Yang, Zhiyong
2017-09-04 10:27             ` Ananyev, Konstantin
2017-09-04 14:18               ` Yang, Zhiyong
2017-09-06  8:42               ` Hemant Agrawal
2017-09-06  8:52                 ` Yang, Zhiyong
2017-09-04 10:29             ` Bruce Richardson
2017-09-04  9:27       ` Ananyev, Konstantin
2017-09-04  5:57   ` [dpdk-dev] [PATCH v2 4/4] testpmd: add flexibility to mbuf allocation Zhiyong Yang
2017-09-09 14:47   ` [dpdk-dev] [PATCH v3 0/4] increase port_id range Zhiyong Yang
2017-09-09 14:47     ` [dpdk-dev] [PATCH v3 1/4] ethdev: " Zhiyong Yang
2017-09-11  9:37       ` Adrien Mazarguil
2017-09-11 10:51         ` Yang, Zhiyong
2017-09-11 10:21       ` Ferruh Yigit
2017-09-13  2:26         ` Yang, Zhiyong
2017-09-13 11:56           ` Ferruh Yigit
2017-09-13 12:15             ` Yang, Zhiyong
2017-09-13 12:18             ` Thomas Monjalon
2017-09-13 13:33               ` Ferruh Yigit
2017-09-19  6:05                 ` Yang, Zhiyong
2017-09-19 12:30                   ` Wiles, Keith
2017-09-14 12:49           ` Ferruh Yigit
2017-09-15  5:11             ` Yang, Zhiyong
2017-09-09 14:47     ` [dpdk-dev] [PATCH v3 2/4] test: " Zhiyong Yang
2017-09-09 14:47     ` [dpdk-dev] [PATCH v3 3/4] examples: " Zhiyong Yang
2017-09-14 14:41       ` Ferruh Yigit
2017-09-09 14:47     ` [dpdk-dev] [PATCH v3 4/4] librte_mbuf: modify port initialization value Zhiyong Yang
2017-09-11 10:23     ` [dpdk-dev] [PATCH v3 0/4] increase port_id range Ferruh Yigit
2017-09-11 11:25       ` Yang, Zhiyong
2017-09-13  8:14       ` Matej Vido
2017-09-13  8:21         ` Yang, Zhiyong
2017-09-18 14:54           ` Laatz, Kevin
2017-09-19  1:39             ` Yang, Zhiyong
2017-09-11 10:26     ` Ferruh Yigit
2017-09-11 10:55       ` Yang, Zhiyong
2017-09-11 11:24         ` Ferruh Yigit
2017-09-21  8:32     ` [dpdk-dev] [PATCH v4 0/5] " Zhiyong Yang
2017-09-21  8:32       ` [dpdk-dev] [PATCH v4 1/5] net/bonding: remove bonding APIs using ABI versioning Zhiyong Yang
2017-09-21 10:36         ` Ferruh Yigit
2017-09-22  2:02           ` Yang, Zhiyong
2017-09-21  8:32       ` [dpdk-dev] [PATCH v4 2/5] ethdev: increase port_id range Zhiyong Yang
2017-09-21 11:49         ` Adrien Mazarguil
2017-10-06 14:34           ` Nélio Laranjeiro
2017-09-21  8:32       ` [dpdk-dev] [PATCH v4 3/5] examples: " Zhiyong Yang
2017-09-21  8:32       ` [dpdk-dev] [PATCH v4 4/5] test: " Zhiyong Yang
2017-09-21  8:32       ` [dpdk-dev] [PATCH v4 5/5] librte_mbuf: modify port initialization value Zhiyong Yang
2017-09-25  3:22       ` [dpdk-dev] [PATCH v5 0/5] increase port_id range Zhiyong Yang
2017-09-25  3:22         ` [dpdk-dev] [PATCH v5 1/5] net/bonding: remove bonding APIs using ABI versioning Zhiyong Yang
2017-09-25 11:34           ` Ferruh Yigit
2017-09-25  3:22         ` [dpdk-dev] [PATCH v5 2/5] ethdev: increase port_id range Zhiyong Yang
2017-09-25 11:37           ` Ferruh Yigit
2017-09-25 12:06           ` Ferruh Yigit
2017-09-26  7:01             ` Yang, Zhiyong
2017-09-27 18:44               ` Ferruh Yigit
2017-09-28  2:12                 ` Yang, Zhiyong
2017-09-25  3:22         ` [dpdk-dev] [PATCH v5 3/5] examples: " Zhiyong Yang
2017-09-25  3:22         ` [dpdk-dev] [PATCH v5 4/5] test: " Zhiyong Yang
2017-09-25  3:22         ` [dpdk-dev] [PATCH v5 5/5] librte_mbuf: modify port initialization value Zhiyong Yang
2017-09-29  7:17         ` Zhiyong Yang [this message]
2017-09-29  7:17           ` [dpdk-dev] [PATCH v6 1/5] net/bonding: remove bonding APIs using ABI versioning Zhiyong Yang
2017-09-29  7:17           ` [dpdk-dev] [PATCH v6 2/5] ethdev: increase port_id range Zhiyong Yang
2017-09-29  7:17           ` [dpdk-dev] [PATCH v6 3/5] examples: " Zhiyong Yang
2017-09-29  7:17           ` [dpdk-dev] [PATCH v6 4/5] test: " Zhiyong Yang
2017-09-29  7:17           ` [dpdk-dev] [PATCH v6 5/5] librte_mbuf: modify port initialization value Zhiyong Yang
2017-10-06  2:15           ` [dpdk-dev] [PATCH v6 0/5] increase port_id range Ferruh Yigit
2017-10-06 13:31             ` Gaëtan Rivet
2017-10-06 14:29             ` Thomas Monjalon
2017-10-06 16:02             ` Thomas Monjalon
2017-10-11 21:21             ` Ferruh Yigit
2017-10-12  1:33               ` Yang, Zhiyong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170929071727.21618-1-zhiyong.yang@intel.com \
    --to=zhiyong.yang@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).