DPDK patches and discussions
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas@monjalon.net>
To: dev@dpdk.org
Cc: ncopa@alpinelinux.org, stable@dpdk.org,
	Bruce Richardson <bruce.richardson@intel.com>,
	Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>,
	Narcisa Ana Maria Vasile <navasile@linux.microsoft.com>,
	Dmitry Malloy <dmitrym@microsoft.com>,
	Pallavi Kadam <pallavi.kadam@intel.com>,
	Kevin Laatz <kevin.laatz@intel.com>,
	Ferruh Yigit <ferruh.yigit@intel.com>,
	Jerin Jacob <jerin.jacob@caviumnetworks.com>
Subject: [dpdk-dev] [PATCH v6 05/17] eal: fix build with musl
Date: Sun, 28 Feb 2021 13:53:40 +0100
Message-ID: <20210228125353.2436562-6-thomas@monjalon.net> (raw)
In-Reply-To: <20210228125353.2436562-1-thomas@monjalon.net>

In musl libc, cpu_set_t is defined only if _GNU_SOURCE is defined.
In case _GNU_SOURCE is undefined, as in eal_common_errno.c,
it was not possible to include rte_os.h which uses cpu_set_t.

This limitation is removed: if CPU_SETSIZE is not defined,
cpu_set_t related definitions and functions are skipped.
Note: such definitions are unneeded in eal_common_errno.c.

Applications which do not define _GNU_SOURCE may miss cpu_set_t related
features on musl. Such case is detected by RTE_HAS_CPUSET being undefined,
so functions which depend on rte_cpuset_t will be unavailable.

A missing include of fcntl.h is also added.

Bugzilla ID: 35
Fixes: 11b57c698005 ("eal: fix error string function")
Fixes: 176bb37ca6f3 ("eal: introduce internal wrappers for file operations")
Cc: stable@dpdk.org

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
---
 doc/api/doxy-api.conf.in                | 3 ++-
 lib/librte_eal/freebsd/include/rte_os.h | 1 +
 lib/librte_eal/include/rte_lcore.h      | 4 ++++
 lib/librte_eal/include/rte_thread.h     | 4 ++++
 lib/librte_eal/linux/include/rte_os.h   | 3 +++
 lib/librte_eal/unix/eal_file.c          | 1 +
 lib/librte_eal/windows/include/sched.h  | 1 +
 lib/librte_telemetry/rte_telemetry.h    | 4 ++++
 8 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/doc/api/doxy-api.conf.in b/doc/api/doxy-api.conf.in
index 5c883b613b..a536bcb493 100644
--- a/doc/api/doxy-api.conf.in
+++ b/doc/api/doxy-api.conf.in
@@ -80,7 +80,8 @@ INPUT                   += @API_EXAMPLES@
 FILE_PATTERNS           = rte_*.h \
                           cmdline.h
 PREDEFINED              = __DOXYGEN__ \
-			   VFIO_PRESENT \
+                          RTE_HAS_CPUSET \
+                          VFIO_PRESENT \
                           __attribute__(x)=
 
 OPTIMIZE_OUTPUT_FOR_C   = YES
diff --git a/lib/librte_eal/freebsd/include/rte_os.h b/lib/librte_eal/freebsd/include/rte_os.h
index c16f2a30e9..627f0483ab 100644
--- a/lib/librte_eal/freebsd/include/rte_os.h
+++ b/lib/librte_eal/freebsd/include/rte_os.h
@@ -13,6 +13,7 @@
 #include <pthread_np.h>
 
 typedef cpuset_t rte_cpuset_t;
+#define RTE_HAS_CPUSET
 #define RTE_CPU_AND(dst, src1, src2) do \
 { \
 	cpuset_t tmp; \
diff --git a/lib/librte_eal/include/rte_lcore.h b/lib/librte_eal/include/rte_lcore.h
index 0fe0bd839c..1550b75da0 100644
--- a/lib/librte_eal/include/rte_lcore.h
+++ b/lib/librte_eal/include/rte_lcore.h
@@ -186,6 +186,8 @@ __rte_experimental
 int
 rte_lcore_to_cpu_id(int lcore_id);
 
+#ifdef RTE_HAS_CPUSET
+
 /**
  * @warning
  * @b EXPERIMENTAL: this API may change without prior notice.
@@ -200,6 +202,8 @@ __rte_experimental
 rte_cpuset_t
 rte_lcore_cpuset(unsigned int lcore_id);
 
+#endif /* RTE_HAS_CPUSET */
+
 /**
  * Test if an lcore is enabled.
  *
diff --git a/lib/librte_eal/include/rte_thread.h b/lib/librte_eal/include/rte_thread.h
index e640ea1857..ac5a89b1ad 100644
--- a/lib/librte_eal/include/rte_thread.h
+++ b/lib/librte_eal/include/rte_thread.h
@@ -25,6 +25,8 @@ extern "C" {
  */
 typedef struct eal_tls_key *rte_tls_key;
 
+#ifdef RTE_HAS_CPUSET
+
 /**
  * Set core affinity of the current thread.
  * Support both EAL and non-EAL thread and update TLS.
@@ -46,6 +48,8 @@ int rte_thread_set_affinity(rte_cpuset_t *cpusetp);
  */
 void rte_thread_get_affinity(rte_cpuset_t *cpusetp);
 
+#endif /* RTE_HAS_CPUSET */
+
 /**
  * Create a TLS data key visible to all threads in the process.
  * the created key is later used to get/set a value.
diff --git a/lib/librte_eal/linux/include/rte_os.h b/lib/librte_eal/linux/include/rte_os.h
index 390b87b3a1..1618b4df22 100644
--- a/lib/librte_eal/linux/include/rte_os.h
+++ b/lib/librte_eal/linux/include/rte_os.h
@@ -12,7 +12,9 @@
 
 #include <sched.h>
 
+#ifdef CPU_SETSIZE /* may require _GNU_SOURCE */
 typedef cpu_set_t rte_cpuset_t;
+#define RTE_HAS_CPUSET
 #define RTE_CPU_AND(dst, src1, src2) CPU_AND(dst, src1, src2)
 #define RTE_CPU_OR(dst, src1, src2) CPU_OR(dst, src1, src2)
 #define RTE_CPU_FILL(set) do \
@@ -28,5 +30,6 @@ typedef cpu_set_t rte_cpuset_t;
 	RTE_CPU_FILL(&tmp); \
 	CPU_XOR(dst, &tmp, src); \
 } while (0)
+#endif
 
 #endif /* _RTE_OS_H_ */
diff --git a/lib/librte_eal/unix/eal_file.c b/lib/librte_eal/unix/eal_file.c
index 1b26475ba4..ec554e0096 100644
--- a/lib/librte_eal/unix/eal_file.c
+++ b/lib/librte_eal/unix/eal_file.c
@@ -4,6 +4,7 @@
 
 #include <sys/file.h>
 #include <sys/mman.h>
+#include <fcntl.h>
 #include <unistd.h>
 
 #include <rte_errno.h>
diff --git a/lib/librte_eal/windows/include/sched.h b/lib/librte_eal/windows/include/sched.h
index fbe07f742c..ff572b5dcb 100644
--- a/lib/librte_eal/windows/include/sched.h
+++ b/lib/librte_eal/windows/include/sched.h
@@ -28,6 +28,7 @@ extern "C" {
 typedef struct _rte_cpuset_s {
 	long long _bits[_NUM_SETS(CPU_SETSIZE)];
 } rte_cpuset_t;
+#define RTE_HAS_CPUSET
 
 #define CPU_SET(b, s) ((s)->_bits[_WHICH_SET(b)] |= (1LL << _WHICH_BIT(b)))
 
diff --git a/lib/librte_telemetry/rte_telemetry.h b/lib/librte_telemetry/rte_telemetry.h
index f8e54dc68e..3ff3a42d78 100644
--- a/lib/librte_telemetry/rte_telemetry.h
+++ b/lib/librte_telemetry/rte_telemetry.h
@@ -292,6 +292,8 @@ __rte_experimental
 int
 rte_telemetry_register_cmd(const char *cmd, telemetry_cb fn, const char *help);
 
+#ifdef RTE_HAS_CPUSET
+
 /**
  * @internal
  * Initialize Telemetry.
@@ -314,6 +316,8 @@ int
 rte_telemetry_init(const char *runtime_dir, rte_cpuset_t *cpuset,
 		const char **err_str);
 
+#endif /* RTE_HAS_CPUSET */
+
 /**
  * Get a pointer to a container with memory allocated. The container is to be
  * used embedded within an existing telemetry dict/array.
-- 
2.30.1


  parent reply	other threads:[~2021-02-28 12:54 UTC|newest]

Thread overview: 140+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-13 17:06 [dpdk-dev] [PATCH v3 00/15] Build fixes for musl libc Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 01/15] app/testpmd: replace uint with unsigned int Natanael Copa
2019-03-26 16:59   ` Iremonger, Bernard
2019-03-26 16:59     ` Iremonger, Bernard
2019-03-30 22:17   ` Thomas Monjalon
2019-03-30 22:17     ` Thomas Monjalon
2019-07-04  9:20     ` Iremonger, Bernard
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 02/15] net/cxgbe: " Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 03/15] bus/pci: add fallback for out[lwb]_p for non GNU libc Natanael Copa
2019-03-30 22:22   ` Thomas Monjalon
2019-03-30 22:22     ` Thomas Monjalon
2019-07-04 12:16     ` Natanael Copa
2019-07-04 13:20       ` Thomas Monjalon
2019-07-04 15:30         ` Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 04/15] bus/pci: factor out various ifdefs in pci_uio_ioport_{read, write} Natanael Copa
2019-03-30 22:25   ` Thomas Monjalon
2019-03-30 22:25     ` Thomas Monjalon
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 05/15] bus/fslmc: fix compile error with musl libc Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 06/15] bus/fslmc: remove unused include of error.h Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 07/15] net/nfp: build fix for musl libc Natanael Copa
2019-03-21  9:48   ` Alejandro Lucero
2019-03-21  9:48     ` Alejandro Lucero
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 08/15] app/test: include fcntl.h due to use of O_RDONLY Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 09/15] app/test: fix setting of -D_GNU_SOURCE with meson Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 10/15] bus/dpaa: use warn(3) instead of error(3) to improve portability Natanael Copa
2019-03-30 22:33   ` Thomas Monjalon
2019-03-30 22:33     ` Thomas Monjalon
2020-07-10  5:13   ` Hemant Agrawal
2021-03-19  9:56     ` Thomas Monjalon
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 11/15] bus/dpaa: fix warning: "__WORDSIZE" is not defined, evaluates to 0 Natanael Copa
2019-03-30 22:36   ` Thomas Monjalon
2019-03-30 22:36     ` Thomas Monjalon
2020-07-10  5:10   ` Hemant Agrawal
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 12/15] crypto/dpaa2_sec: build fix for musl libc Natanael Copa
2020-07-10  5:11   ` Hemant Agrawal
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 13/15] crypto/dpaa2_sec: simplify pr_{debug, err, warn} macros Natanael Copa
2019-03-30 22:39   ` Thomas Monjalon
2019-03-30 22:39     ` Thomas Monjalon
2020-07-10  5:09   ` Hemant Agrawal
2020-07-10  5:11   ` Hemant Agrawal
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 14/15] net/netvsc: fix compile warning for fcntl.h include Natanael Copa
2019-03-13 17:06 ` [dpdk-dev] [PATCH v3 15/15] eal/linux: simplify debug message in sigbus_handler Natanael Copa
2019-03-14 17:09 ` [dpdk-dev] [PATCH v3 00/15] Build fixes for musl libc Sirvys, Andrius
2019-03-14 17:09   ` Sirvys, Andrius
2019-03-30 23:57 ` Thomas Monjalon
2019-03-30 23:57   ` Thomas Monjalon
2019-07-05  8:03   ` David Marchand
2020-11-05 21:17   ` [dpdk-dev] " Natanael Copa
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 1/8] app/testpmd: fix uint build error with " Natanael Copa
2020-11-06  9:22       ` [dpdk-dev] [PATCH v4 1/8] app/testpmd: fix uint build error withmusl libc Morten Brørup
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 2/8] net/cxgbe: fix uint build error with musl libc Natanael Copa
2020-11-06  9:24       ` [dpdk-dev] [PATCH v4 2/8] net/cxgbe: fix uint build error with musllibc Morten Brørup
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 3/8] bus/pci: add fallback for out* for non GNU libc Natanael Copa
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 4/8] bus/dpaa: use warn instead of error to improve portability Natanael Copa
2020-11-10 14:41       ` Fabrizio D'Angelo
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 5/8] bus/dpaa: fix detection of 64 bit arch Natanael Copa
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 6/8] common/dpaax: build fix for musl libc Natanael Copa
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 7/8] common/dpaax: simplify pr debug/err/warn macros Natanael Copa
2020-11-05 21:17     ` [dpdk-dev] [PATCH v4 8/8] eal: add missing include to fix build with musl libc Natanael Copa
2020-11-06 10:11     ` [dpdk-dev] Build fixes for " Thomas Monjalon
2020-11-06 10:44     ` David Marchand
2021-02-18 16:13       ` Thomas Monjalon
2021-02-20  8:51         ` Natanael Copa
2021-02-25  9:41           ` Thomas Monjalon
2021-02-25 18:22 ` [dpdk-dev] [PATCH v5 00/17] Alpine/musl build support Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 01/17] eal: fix comment of OS-specific header files Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 02/17] buildtools: fix build with busybox Thomas Monjalon
2021-02-26  9:11     ` Bruce Richardson
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 03/17] build: detect execinfo library on Linux Thomas Monjalon
2021-02-26  9:08     ` Bruce Richardson
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 04/17] build: define _GNU_SOURCE globally Thomas Monjalon
2021-02-26  9:08     ` Bruce Richardson
2021-02-26  9:40       ` Thomas Monjalon
2021-02-26  9:46         ` Bruce Richardson
2021-02-26 10:04           ` Thomas Monjalon
2021-02-28 12:53             ` Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 05/17] eal/linux: fix build with musl Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 06/17] drivers: fix header includes for musl Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 07/17] drivers: replace page size definitions with function Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 08/17] bus/pci: support I/O port operations with musl Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 09/17] bus/dpaa: fix 64-bit arch detection Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 10/17] bus/dpaa: fix build with musl Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 11/17] common/dpaax/caamflib: " Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 12/17] common/dpaax/caamflib: simplify log macros Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 13/17] net/cxgbe: remove use of uint type Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 14/17] net/igc: " Thomas Monjalon
2021-02-26  0:49     ` Wang, Haiyue
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 15/17] vdpa/mlx5: replace pthread functions unavailable in musl Thomas Monjalon
2021-03-01  7:30     ` Matan Azrad
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 16/17] app/testpmd: fix build with musl Thomas Monjalon
2021-02-25 18:22   ` [dpdk-dev] [PATCH v5 17/17] examples/bbdev: fix header include for musl Thomas Monjalon
2021-02-28 12:53 ` [dpdk-dev] [PATCH v6 00/17] Alpine/musl build support Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 01/17] eal: fix comment of OS-specific header files Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 02/17] buildtools: fix build with busybox Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 03/17] build: detect execinfo library on Linux Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 04/17] build: remove redundant _GNU_SOURCE definitions Thomas Monjalon
2021-02-28 12:53   ` Thomas Monjalon [this message]
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 06/17] drivers: fix header includes for musl Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 07/17] drivers: replace page size definitions with function Thomas Monjalon
2021-03-01  9:41     ` Bruce Richardson
2021-03-01  9:53       ` Thomas Monjalon
2021-03-01 10:09         ` Bruce Richardson
2021-03-01 14:22     ` Andrew Boyer
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 08/17] bus/pci: support I/O port operations with musl Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 09/17] bus/dpaa: fix 64-bit arch detection Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 10/17] bus/dpaa: fix build with musl Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 11/17] common/dpaax/caamflib: " Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 12/17] common/dpaax/caamflib: simplify log macros Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 13/17] net/cxgbe: remove use of uint type Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 14/17] net/igc: " Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 15/17] vdpa/mlx5: replace pthread functions unavailable in musl Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 16/17] app/testpmd: fix build with musl Thomas Monjalon
2021-02-28 12:53   ` [dpdk-dev] [PATCH v6 17/17] examples/bbdev: fix header include for musl Thomas Monjalon
2021-03-17 22:42   ` [dpdk-dev] [PATCH v6 00/17] Alpine/musl build support Thomas Monjalon
2021-03-18  8:12     ` Andrew Rybchenko
2021-03-18  8:56     ` David Marchand
2021-03-19 14:57 ` [dpdk-dev] [PATCH v7 " Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 01/17] eal: fix comment of OS-specific header files Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 02/17] buildtools: fix build with busybox Thomas Monjalon
2021-03-22  8:52     ` Kinsella, Ray
2021-03-22  8:55       ` Thomas Monjalon
2021-03-22  9:01         ` Kinsella, Ray
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 03/17] build: detect execinfo library on Linux Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 04/17] build: remove redundant _GNU_SOURCE definitions Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 05/17] eal: fix build with musl Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 06/17] drivers: replace page size definitions with function Thomas Monjalon
2021-03-19 15:47     ` McDaniel, Timothy
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 07/17] common/dpaax/caamflib: fix build with musl Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 08/17] common/dpaax/caamflib: simplify log macros Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 09/17] bus/dpaa: fix 64-bit arch detection Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 10/17] bus/dpaa: fix build with musl Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 11/17] bus/pci: support I/O port operations " Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 12/17] net/cxgbe: remove use of uint type Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 13/17] net/igc: " Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 14/17] vdpa/mlx5: replace pthread functions unavailable in musl Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 15/17] event/dlb: fix header includes for musl Thomas Monjalon
2021-03-19 15:47     ` McDaniel, Timothy
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 16/17] app/testpmd: fix build with musl Thomas Monjalon
2021-03-19 14:57   ` [dpdk-dev] [PATCH v7 17/17] examples/bbdev: fix header include for musl Thomas Monjalon
2021-03-23 10:02   ` [dpdk-dev] [PATCH v7 00/17] Alpine/musl build support Thomas Monjalon

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=20210228125353.2436562-6-thomas@monjalon.net \
    --to=thomas@monjalon.net \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=dmitry.kozliuk@gmail.com \
    --cc=dmitrym@microsoft.com \
    --cc=ferruh.yigit@intel.com \
    --cc=jerin.jacob@caviumnetworks.com \
    --cc=kevin.laatz@intel.com \
    --cc=navasile@linux.microsoft.com \
    --cc=ncopa@alpinelinux.org \
    --cc=pallavi.kadam@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

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git