patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Christian Ehrhardt <christian.ehrhardt@canonical.com>
To: Dapeng Yu <dapengx.yu@intel.com>
Cc: Jasvinder Singh <jasvinder.singh@intel.com>,
	dpdk stable <stable@dpdk.org>
Subject: Re: [dpdk-stable] patch 'net/softnic: fix memory leak in arguments parsing' has been queued to stable release 19.11.10
Date: Wed, 11 Aug 2021 12:19:39 +0200	[thread overview]
Message-ID: <CAATJJ0K8Hakg66DChLDLm5nPJcT0BNPRPBBp3RqyjNyHjwZ17w@mail.gmail.com> (raw)
In-Reply-To: <20210810154022.749358-79-christian.ehrhardt@canonical.com>

On Tue, Aug 10, 2021 at 5:44 PM <christian.ehrhardt@canonical.com> wrote:
>
> Hi,
>
> FYI, your patch has been queued to stable release 19.11.10
>

Hi,
while applying cleanly your patch caused build time failures like:

[  262s]   if (rte_strscpy(p->firmware, SOFTNIC_FIRMWARE,
[  262s]   ^
[  262s] /home/abuild/rpmbuild/BUILD/dpdk-1628675870.0ca0a4945/drivers/net/softnic/rte_eth_softnic.c:451:2:
error: nested extern declaration of 'rte_strscpy'
[-Werror=nested-externs]
[  262s] /home/abuild/rpmbuild/BUILD/dpdk-1628675870.0ca0a4945/drivers/net/softnic/rte_eth_softnic.c:
At top level:
[  262s] cc1: error: unrecognized command line option
"-Wno-address-of-packed-member" [-Werror]

Therefore the patch will be de-qeueud from the stable branch that shall become
19.11.10.
Please consider having a look and providing a backport.

A backport should contain a reference to the DPDK main branch commit
in it's commit message in the following fashion:
    [ upstream commit <commit's dpdk main branch SHA-1 checksum> ]

For example:
    https://git.dpdk.org/dpdk-stable/commit/?h=18.11&id=d90e6ae6f936ecdc2fd3811ff9f26aec7f3c06eb

When sending the backported patch, please indicate the target branch in the
subject line, as we have multiple branches, for example:
    [PATCH 19.11] foo/bar: fix baz

With git format-patch, this can be achieved by appending the parameter:
    --subject-prefix='PATCH 19.11'

Send the backported patch to "stable@dpdk.org" but not "dev@dpdk.org".

FYI, branch 19.11 is located at tree:
   https://git.dpdk.org/dpdk-stable

Thanks in advance,
Chrtistian


> Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
> It will be pushed if I get no objections before 08/12/21. So please
> shout if anyone has objections.
>
> Also note that after the patch there's a diff of the upstream commit vs the
> patch applied to the branch. This will indicate if there was any rebasing
> needed to apply to the stable branch. If there were code changes for rebasing
> (ie: not only metadata diffs), please double check that the rebase was
> correctly done.
>
> Queued patches are on a temporary branch at:
> https://github.com/cpaelzer/dpdk-stable-queue
>
> This queued commit can be viewed at:
> https://github.com/cpaelzer/dpdk-stable-queue/commit/d313979fd603c8c588822a675b328fd000e17734
>
> Thanks.
>
> Christian Ehrhardt <christian.ehrhardt@canonical.com>
>
> ---
> From d313979fd603c8c588822a675b328fd000e17734 Mon Sep 17 00:00:00 2001
> From: Dapeng Yu <dapengx.yu@intel.com>
> Date: Thu, 15 Jul 2021 13:38:14 +0800
> Subject: [PATCH] net/softnic: fix memory leak in arguments parsing
>
> [ upstream commit d8f852f5f3692bbf15743d1aca25e6abcbe652ad ]
>
> In function pmd_parse_args(), firmware path is duplicated from device
> arguments as character string, but is never freed, which cause memory
> leak.
>
> This patch changes the type of firmware member of struct pmd_params to
> character array, to make memory resource release unnecessary, and
> changes the type of name member to character array, to keep the
> consistency of character string handling in struct pmd_params.
>
> Fixes: 7e68bc20f8c8 ("net/softnic: restructure")
>
> Signed-off-by: Dapeng Yu <dapengx.yu@intel.com>
> Acked-by: Jasvinder Singh <jasvinder.singh@intel.com>
> ---
>  drivers/net/softnic/rte_eth_softnic.c         | 30 ++++++++++++++++---
>  .../net/softnic/rte_eth_softnic_internals.h   |  5 ++--
>  2 files changed, 29 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/softnic/rte_eth_softnic.c b/drivers/net/softnic/rte_eth_softnic.c
> index 11723778fd..f4858255ce 100644
> --- a/drivers/net/softnic/rte_eth_softnic.c
> +++ b/drivers/net/softnic/rte_eth_softnic.c
> @@ -440,6 +440,7 @@ pmd_parse_args(struct pmd_params *p, const char *params)
>  {
>         struct rte_kvargs *kvlist;
>         int ret = 0;
> +       char *firmware = NULL;
>
>         kvlist = rte_kvargs_parse(params, pmd_valid_args);
>         if (kvlist == NULL)
> @@ -447,7 +448,14 @@ pmd_parse_args(struct pmd_params *p, const char *params)
>
>         /* Set default values */
>         memset(p, 0, sizeof(*p));
> -       p->firmware = SOFTNIC_FIRMWARE;
> +       if (rte_strscpy(p->firmware, SOFTNIC_FIRMWARE,
> +                       sizeof(p->firmware)) < 0) {
> +               PMD_LOG(WARNING,
> +                       "\"%s\": firmware path should be shorter than %zu",
> +                       SOFTNIC_FIRMWARE, sizeof(p->firmware));
> +               ret = -EINVAL;
> +               goto out_free;
> +       }
>         p->cpu_id = SOFTNIC_CPU_ID;
>         p->sc = SOFTNIC_SC;
>         p->tm.n_queues = SOFTNIC_TM_N_QUEUES;
> @@ -468,11 +476,20 @@ pmd_parse_args(struct pmd_params *p, const char *params)
>         /* Firmware script (optional) */
>         if (rte_kvargs_count(kvlist, PMD_PARAM_FIRMWARE) == 1) {
>                 ret = rte_kvargs_process(kvlist, PMD_PARAM_FIRMWARE,
> -                       &get_string, &p->firmware);
> +                       &get_string, &firmware);
>                 if (ret < 0)
>                         goto out_free;
>         }
> -
> +       if (rte_strscpy(p->firmware, firmware,
> +                       sizeof(p->firmware)) < 0) {
> +               PMD_LOG(WARNING,
> +                       "\"%s\": firmware path should be shorter than %zu",
> +                       firmware, sizeof(p->firmware));
> +               free(firmware);
> +               ret = -EINVAL;
> +               goto out_free;
> +       }
> +       free(firmware);
>         /* Connection listening port (optional) */
>         if (rte_kvargs_count(kvlist, PMD_PARAM_CONN_PORT) == 1) {
>                 ret = rte_kvargs_process(kvlist, PMD_PARAM_CONN_PORT,
> @@ -621,7 +638,12 @@ pmd_probe(struct rte_vdev_device *vdev)
>         if (status)
>                 return status;
>
> -       p.name = name;
> +       if (rte_strscpy(p.name, name, sizeof(p.name)) < 0) {
> +               PMD_LOG(WARNING,
> +                       "\"%s\": device name should be shorter than %zu",
> +                       name, sizeof(p.name));
> +               return -EINVAL;
> +       }
>
>         /* Allocate and initialize soft ethdev private data */
>         dev_private = pmd_init(&p);
> diff --git a/drivers/net/softnic/rte_eth_softnic_internals.h b/drivers/net/softnic/rte_eth_softnic_internals.h
> index 6eec43b22b..f8549b2174 100644
> --- a/drivers/net/softnic/rte_eth_softnic_internals.h
> +++ b/drivers/net/softnic/rte_eth_softnic_internals.h
> @@ -28,14 +28,15 @@
>  #include "conn.h"
>
>  #define NAME_SIZE                                            64
> +#define SOFTNIC_PATH_MAX                                     4096
>
>  /**
>   * PMD Parameters
>   */
>
>  struct pmd_params {
> -       const char *name;
> -       const char *firmware;
> +       char name[NAME_SIZE];
> +       char firmware[SOFTNIC_PATH_MAX];
>         uint16_t conn_port;
>         uint32_t cpu_id;
>         int sc; /**< Service cores. */
> --
> 2.32.0
>
> ---
>   Diff of the applied patch vs upstream commit (please double-check if non-empty:
> ---
> --- -   2021-08-10 15:11:16.063474888 +0200
> +++ 0079-net-softnic-fix-memory-leak-in-arguments-parsing.patch 2021-08-10 15:11:13.090638619 +0200
> @@ -1 +1 @@
> -From d8f852f5f3692bbf15743d1aca25e6abcbe652ad Mon Sep 17 00:00:00 2001
> +From d313979fd603c8c588822a675b328fd000e17734 Mon Sep 17 00:00:00 2001
> @@ -5,0 +6,2 @@
> +[ upstream commit d8f852f5f3692bbf15743d1aca25e6abcbe652ad ]
> +
> @@ -16 +17,0 @@
> -Cc: stable@dpdk.org
> @@ -26 +27 @@
> -index f64023256d..0aa7147b13 100644
> +index 11723778fd..f4858255ce 100644
> @@ -91 +92 @@
> -index 1b3186ef0b..07285ca315 100644
> +index 6eec43b22b..f8549b2174 100644



-- 
Christian Ehrhardt
Staff Engineer, Ubuntu Server
Canonical Ltd

  reply	other threads:[~2021-08-11 10:20 UTC|newest]

Thread overview: 114+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-10 15:38 [dpdk-stable] patch 'bitmap: fix buffer overrun in bitmap init' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: check access to possible null pointer' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: fix error messages in VNIC prepare' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: set flow error when free filter not available' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: remove unnecessary code' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: fix error handling in VNIC prepare' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: set flow error after tunnel redirection free' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: use common function to free VNIC resource' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: fix check for PTP support in FW' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/bnxt: improve probing log message' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'net/iavf: fix RSS key access out of bound' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'doc: fix default burst size in testpmd' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'devtools: fix file listing in maintainers check' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'vhost/crypto: check request pointer before dereference' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'kni: fix mbuf allocation for kernel side use' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'kni: fix crash on userspace VA for segmented packets' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'flow_classify: fix leaking rules on delete' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'rib: fix max depth IPv6 lookup' " christian.ehrhardt
2021-08-10 15:38 ` [dpdk-stable] patch 'tests/eal: fix memory leak' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'common/mlx5: fix Netlink port name padding in probing' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'app/test: fix IPv6 header initialization' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/mbuf: fix virtual address conversion' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/octeontx2: fix flow creation limit on CN98xx' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/octeontx2: use runtime LSO format indices' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/ice/base: fix first profile mask' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'vhost: fix missing memory table NUMA realloc' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'vhost: fix missing guest pages " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'mempool/octeontx2: fix shift calculation' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'drivers/net: fix memzone allocations for DMA memory' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/hns3: increase VF reset retry maximum' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/hns3: fix delay for waiting to stop Rx/Tx' " christian.ehrhardt
2021-08-11  9:02   ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/hns3: fix VLAN strip log' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/pfe: remove unnecessary null check' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'ethdev: fix doc of flow action' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'app/testpmd: change port link speed without stopping all' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'crypto/qat: fix Arm build with special memcpy' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'app/crypto-perf: fix out-of-place mempool allocation' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/crypto: fix mbuf reset after null check' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/crypto: fix typo in AES case' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/crypto: fix typo in ESN " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'crypto/mvsam: fix AES-GCM session parameters' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'crypto/mvsam: fix capabilities' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'crypto/mvsam: fix session data reset' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'crypto/mvsam: fix options parsing' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'ipc: stop mp control thread on cleanup' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'power: fix namespace for internal struct' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: cleanup code' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: fix typo in log message' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: fix Tx descriptor status implementation' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: fix scalar Tx completion handling' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: fix Rx interrupt setting' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'doc: add limitation for ConnectX-4 with L2 in mlx5 guide' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: fix match MPLS over GRE with key' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'common/mlx5: fix Netlink receive message buffer size' " christian.ehrhardt
2021-08-11  9:26   ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: remove unsupported flow item MPLS over IP' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/ice: fix memzone leak when firmware is missing' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/i40e: fix descriptor scan on Arm' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/ixgbe: fix flow entry access after freeing' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/octeontx/base: fix debug build with clang' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/power: fix CPU frequency when turbo enabled' " christian.ehrhardt
2021-08-11  9:59   ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/virtio: fix aarch32 build' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bonding: fix error message on flow verify' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bonding: check flow setting' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/softnic: fix connection memory leak' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: remove redundant operations in NEON Rx' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: fix typo in vectorized Rx comments' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mvpp2: fix port speed overflow' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mvpp2: fix configured state dependency' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: fix nested lock during bonding' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: clear cached statistics' " christian.ehrhardt
2021-08-11  8:54   ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/ice/base: revert change of first profile mask' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'distributor: fix 128-bit write alignment' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/power: fix CPU frequency check for intel_pstate' " christian.ehrhardt
2021-08-11  9:51   ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'test/crypto: fix mempool size for session-less' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: fix overflow in mempool argument' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: fix Rx/Tx queue checks' " christian.ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/mlx5: reject inner ethernet matching in GTP' " christian.ehrhardt
2021-08-11  9:17   ` Christian Ehrhardt
2021-08-11 10:25     ` Lior Margalit
2021-08-11 11:23       ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/bnxt: fix null dereference in interrupt handler' " christian.ehrhardt
2021-08-11  8:50   ` Christian Ehrhardt
2021-08-10 15:39 ` [dpdk-stable] patch 'net/softnic: fix memory leak in arguments parsing' " christian.ehrhardt
2021-08-11 10:19   ` Christian Ehrhardt [this message]
2021-08-10 15:40 ` [dpdk-stable] patch 'net/hns3: fix filter parsing comment' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/hns3: fix Tx prepare after stop' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/hinic: increase protection of the VLAN' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/hinic/base: fix LRO' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'bus/dpaa: fix freeing in FMAN interface destructor' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/sfc: fix MAC stats lock in xstats query by ID' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/sfc: fix reading adapter state without locking' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/sfc: fix xstats query by ID according to ethdev' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/sfc: fix xstats query by unsorted list of IDs' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/sfc: fix MAC stats update for stopped device' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'app/testpmd: fix help string for port reset' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'app/testpmd: fix MAC address after " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/virtio: report maximum MTU in device info' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'vhost: fix crash on reconnect' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/virtio: fix interrupt handle leak' " christian.ehrhardt
2021-08-11  6:52   ` Christian Ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/iavf: fix Tx threshold check' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/softnic: fix null dereference in arguments parsing' " christian.ehrhardt
2021-08-11 10:21   ` Christian Ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'net/softnic: fix memory leak as profile is freed' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'app/testpmd: fix Tx checksum calculation for tunnel' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'cryptodev: fix freeing after device release' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'crypto/octeontx: " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'doc: announce common prefix for ethdev' " christian.ehrhardt
2021-08-10 15:40 ` [dpdk-stable] patch 'app/testpmd: fix IPv4 checksum' " christian.ehrhardt

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=CAATJJ0K8Hakg66DChLDLm5nPJcT0BNPRPBBp3RqyjNyHjwZ17w@mail.gmail.com \
    --to=christian.ehrhardt@canonical.com \
    --cc=dapengx.yu@intel.com \
    --cc=jasvinder.singh@intel.com \
    --cc=stable@dpdk.org \
    /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).