From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Luca Boccassi <bluca@debian.org>
Subject: [dpdk-dev] [PATCH v10 5/7] app/test: use new allowlist and blocklist
Date: Tue, 10 Nov 2020 14:55:42 -0800 [thread overview]
Message-ID: <20201110225544.1876-6-stephen@networkplumber.org> (raw)
In-Reply-To: <20201110225544.1876-1-stephen@networkplumber.org>
Test the renamed blocklist and allowlist arguments.
Use new terms in test variable names as well.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Luca Boccassi <bluca@debian.org>
---
app/test/autotest.py | 16 +++++------
app/test/autotest_runner.py | 18 ++++++-------
app/test/test.c | 2 +-
app/test/test_eal_flags.c | 53 +++++++++++++++++++------------------
4 files changed, 45 insertions(+), 44 deletions(-)
diff --git a/app/test/autotest.py b/app/test/autotest.py
index 9eef1efbe565..6ff2e71475a1 100644
--- a/app/test/autotest.py
+++ b/app/test/autotest.py
@@ -10,7 +10,7 @@
def usage():
print("Usage: autotest.py [test app|test iso image] ",
- "[target] [whitelist|-blacklist]")
+ "[target] [allow|-block]")
if len(sys.argv) < 3:
usage()
@@ -18,18 +18,18 @@ def usage():
target = sys.argv[2]
-test_whitelist = None
-test_blacklist = None
+test_allowlist = None
+test_blocklist = None
-# get blacklist/whitelist
+# get blocklist/allowlist
if len(sys.argv) > 3:
testlist = sys.argv[3].split(',')
testlist = [test.lower() for test in testlist]
if testlist[0].startswith('-'):
testlist[0] = testlist[0].lstrip('-')
- test_blacklist = testlist
+ test_blocklist = testlist
else:
- test_whitelist = testlist
+ test_allowlist = testlist
cmdline = "%s -c f" % (sys.argv[1])
@@ -39,8 +39,8 @@ def usage():
# processes, so make it 1, otherwise make it 4. ignored for non-parallel tests
n_processes = 1 if "bsd" in target else 4
-runner = autotest_runner.AutotestRunner(cmdline, target, test_blacklist,
- test_whitelist, n_processes)
+runner = autotest_runner.AutotestRunner(cmdline, target, test_blocklist,
+ test_allowlist, n_processes)
runner.parallel_tests = autotest_data.parallel_test_list[:]
runner.non_parallel_tests = autotest_data.non_parallel_test_list[:]
diff --git a/app/test/autotest_runner.py b/app/test/autotest_runner.py
index 998fe57a55d1..72c40e85fdd2 100644
--- a/app/test/autotest_runner.py
+++ b/app/test/autotest_runner.py
@@ -188,14 +188,14 @@ class AutotestRunner:
n_tests = 0
fails = 0
log_buffers = []
- blacklist = []
- whitelist = []
+ blocklist = []
+ allowlist = []
- def __init__(self, cmdline, target, blacklist, whitelist, n_processes):
+ def __init__(self, cmdline, target, blocklist, allowlist, n_processes):
self.cmdline = cmdline
self.target = target
- self.blacklist = blacklist
- self.whitelist = whitelist
+ self.blocklist = blocklist
+ self.allowlist = allowlist
self.skipped = []
self.parallel_tests = []
self.non_parallel_tests = []
@@ -269,7 +269,7 @@ def __process_result(self, result):
self.csvwriter.writerow([test_name, test_result, result_str])
# this function checks individual test and decides if this test should be in
- # the group by comparing it against whitelist/blacklist. it also checks if
+ # the group by comparing it against allowlist/blocklist. it also checks if
# the test is compiled into the binary, and marks it as skipped if necessary
def __filter_test(self, test):
test_cmd = test["Command"]
@@ -279,10 +279,10 @@ def __filter_test(self, test):
if "_autotest" in test_id:
test_id = test_id[:-len("_autotest")]
- # filter out blacklisted/whitelisted tests
- if self.blacklist and test_id in self.blacklist:
+ # filter out blocklisted/allowlisted tests
+ if self.blocklist and test_id in self.blocklist:
return False
- if self.whitelist and test_id not in self.whitelist:
+ if self.allowlist and test_id not in self.allowlist:
return False
# if test wasn't compiled in, remove it as well
diff --git a/app/test/test.c b/app/test/test.c
index f27a56e03390..ba0b0309b561 100644
--- a/app/test/test.c
+++ b/app/test/test.c
@@ -61,7 +61,7 @@ do_recursive_call(void)
{ "test_main_lcore_flag", no_action },
{ "test_invalid_n_flag", no_action },
{ "test_no_hpet_flag", no_action },
- { "test_whitelist_flag", no_action },
+ { "test_allow_flag", no_action },
{ "test_invalid_b_flag", no_action },
{ "test_invalid_vdev_flag", no_action },
{ "test_invalid_r_flag", no_action },
diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c
index da119d4e4a92..85b6c6d7c7f9 100644
--- a/app/test/test_eal_flags.c
+++ b/app/test/test_eal_flags.c
@@ -30,7 +30,7 @@
#define no_hpet "--no-hpet"
#define no_huge "--no-huge"
#define no_shconf "--no-shconf"
-#define pci_whitelist "--pci-whitelist"
+#define allow "--allow"
#define vdev "--vdev"
#define memtest "memtest"
#define memtest1 "memtest1"
@@ -223,12 +223,12 @@ get_number_of_sockets(void)
#endif
/*
- * Test that the app doesn't run with invalid whitelist option.
+ * Test that the app doesn't run with invalid allow option.
* Final tests ensures it does run with valid options as sanity check (one
* test for with Domain+BDF, second for just with BDF)
*/
static int
-test_whitelist_flag(void)
+test_allow_flag(void)
{
unsigned i;
#ifdef RTE_EXEC_ENV_FREEBSD
@@ -245,45 +245,45 @@ test_whitelist_flag(void)
const char *wlinval[][7] = {
{prgname, prefix, mp_flag,
- pci_whitelist, "error", "", ""},
+ allow, "error", "", ""},
{prgname, prefix, mp_flag,
- pci_whitelist, "0:0:0", "", ""},
+ allow, "0:0:0", "", ""},
{prgname, prefix, mp_flag,
- pci_whitelist, "0:error:0.1", "", ""},
+ allow, "0:error:0.1", "", ""},
{prgname, prefix, mp_flag,
- pci_whitelist, "0:0:0.1error", "", ""},
+ allow, "0:0:0.1error", "", ""},
{prgname, prefix, mp_flag,
- pci_whitelist, "error0:0:0.1", "", ""},
+ allow, "error0:0:0.1", "", ""},
{prgname, prefix, mp_flag,
- pci_whitelist, "0:0:0.1.2", "", ""},
+ allow, "0:0:0.1.2", "", ""},
};
- /* Test with valid whitelist option */
+ /* Test with valid allow option */
const char *wlval1[] = {prgname, prefix, mp_flag,
- pci_whitelist, "00FF:09:0B.3"};
+ allow, "00FF:09:0B.3"};
const char *wlval2[] = {prgname, prefix, mp_flag,
- pci_whitelist, "09:0B.3", pci_whitelist, "0a:0b.1"};
+ allow, "09:0B.3", allow, "0a:0b.1"};
const char *wlval3[] = {prgname, prefix, mp_flag,
- pci_whitelist, "09:0B.3,type=test",
- pci_whitelist, "08:00.1,type=normal",
+ allow, "09:0B.3,type=test",
+ allow, "08:00.1,type=normal",
};
for (i = 0; i < RTE_DIM(wlinval); i++) {
if (launch_proc(wlinval[i]) == 0) {
printf("Error - process did run ok with invalid "
- "whitelist parameter\n");
+ "allow parameter\n");
return -1;
}
}
if (launch_proc(wlval1) != 0 ) {
- printf("Error - process did not run ok with valid whitelist\n");
+ printf("Error - process did not run ok with valid allow\n");
return -1;
}
if (launch_proc(wlval2) != 0 ) {
- printf("Error - process did not run ok with valid whitelist value set\n");
+ printf("Error - process did not run ok with valid allow value set\n");
return -1;
}
if (launch_proc(wlval3) != 0 ) {
- printf("Error - process did not run ok with valid whitelist + args\n");
+ printf("Error - process did not run ok with valid allow + args\n");
return -1;
}
@@ -291,7 +291,7 @@ test_whitelist_flag(void)
}
/*
- * Test that the app doesn't run with invalid blacklist option.
+ * Test that the app doesn't run with invalid blocklist option.
* Final test ensures it does run with valid options as sanity check
*/
static int
@@ -317,7 +317,7 @@ test_invalid_b_flag(void)
{prgname, prefix, mp_flag, "-b", "error0:0:0.1"},
{prgname, prefix, mp_flag, "-b", "0:0:0.1.2"},
};
- /* Test with valid blacklist option */
+ /* Test with valid blocklist option */
const char *blval[] = {prgname, prefix, mp_flag,
"-b", "FF:09:0B.3"};
@@ -326,12 +326,12 @@ test_invalid_b_flag(void)
for (i = 0; i != RTE_DIM(blinval); i++) {
if (launch_proc(blinval[i]) == 0) {
printf("Error - process did run ok with invalid "
- "blacklist parameter\n");
+ "blocklist parameter\n");
return -1;
}
}
if (launch_proc(blval) != 0) {
- printf("Error - process did not run ok with valid blacklist value\n");
+ printf("Error - process did not run ok with valid blocklist value\n");
return -1;
}
return 0;
@@ -419,7 +419,7 @@ test_invalid_r_flag(void)
{prgname, prefix, mp_flag, "-r", "-1"},
{prgname, prefix, mp_flag, "-r", "17"},
};
- /* Test with valid blacklist option */
+ /* Test with valid blocklist option */
const char *rval[] = {prgname, prefix, mp_flag, "-r", "16"};
int i;
@@ -1492,9 +1492,9 @@ test_eal_flags(void)
return ret;
}
- ret = test_whitelist_flag();
+ ret = test_allow_flag();
if (ret < 0) {
- printf("Error in test_invalid_whitelist_flag()\n");
+ printf("Error in test_allow_flag()\n");
return ret;
}
@@ -1546,7 +1546,8 @@ REGISTER_TEST_COMMAND(eal_flags_main_opt_autotest, test_main_lcore_flag);
REGISTER_TEST_COMMAND(eal_flags_n_opt_autotest, test_invalid_n_flag);
REGISTER_TEST_COMMAND(eal_flags_hpet_autotest, test_no_hpet_flag);
REGISTER_TEST_COMMAND(eal_flags_no_huge_autotest, test_no_huge_flag);
-REGISTER_TEST_COMMAND(eal_flags_w_opt_autotest, test_whitelist_flag);
+REGISTER_TEST_COMMAND(eal_flags_w_opt_autotest, test_allow_flag); /* for legacy CI */
+REGISTER_TEST_COMMAND(eal_flags_a_opt_autotest, test_allow_flag);
REGISTER_TEST_COMMAND(eal_flags_b_opt_autotest, test_invalid_b_flag);
REGISTER_TEST_COMMAND(eal_flags_vdev_opt_autotest, test_invalid_vdev_flag);
REGISTER_TEST_COMMAND(eal_flags_r_opt_autotest, test_invalid_r_flag);
--
2.27.0
next prev parent reply other threads:[~2020-11-10 22:57 UTC|newest]
Thread overview: 117+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-22 14:31 [dpdk-dev] [PATCH 0/8] replace blacklist/whitelist with block/allow Stephen Hemminger
2020-09-22 14:31 ` [dpdk-dev] [PATCH 1/8] eal: add macro to mark macros as deprecated Stephen Hemminger
2020-09-23 9:18 ` Burakov, Anatoly
2020-09-23 17:01 ` Stephen Hemminger
2020-09-22 14:31 ` [dpdk-dev] [PATCH 2/8] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-09-22 14:31 ` [dpdk-dev] [PATCH 3/8] drivers: replace references to blacklist Stephen Hemminger
2020-09-22 14:31 ` [dpdk-dev] [PATCH 4/8] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-14 16:07 ` David Marchand
2020-10-20 12:43 ` Thomas Monjalon
2020-10-20 14:56 ` Stephen Hemminger
2020-09-22 14:31 ` [dpdk-dev] [PATCH 5/8] app/test: use new allowlist and blocklist Stephen Hemminger
2020-09-22 14:32 ` [dpdk-dev] [PATCH 6/8] doc: replace references to blacklist/whitelist Stephen Hemminger
2020-09-22 14:32 ` [dpdk-dev] [PATCH 7/8] doc: change reference to allowlist relative to MAC filtering Stephen Hemminger
2020-09-22 14:32 ` [dpdk-dev] [PATCH 8/8] doc: replace -w with -a in the documentation Stephen Hemminger
2020-10-20 16:20 ` [dpdk-dev] [PATCH v2 0/5] replace blacklist/whitelist with block/allow Stephen Hemminger
2020-10-20 16:20 ` [dpdk-dev] [PATCH v2 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-20 16:20 ` [dpdk-dev] [PATCH v2 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-20 16:20 ` [dpdk-dev] [PATCH v2 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-20 16:20 ` [dpdk-dev] [PATCH v2 4/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-20 16:20 ` [dpdk-dev] [PATCH v2 5/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-10-22 14:39 ` [dpdk-dev] [PATCH v3 0/5] replace blacklist/whitelist with block/allow Stephen Hemminger
2020-10-22 14:39 ` [dpdk-dev] [PATCH v3 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-22 14:39 ` [dpdk-dev] [PATCH v3 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-22 14:39 ` [dpdk-dev] [PATCH v3 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-22 14:39 ` [dpdk-dev] [PATCH v3 4/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-22 14:39 ` [dpdk-dev] [PATCH v3 5/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-10-22 15:18 ` Wang, Haiyue
2020-10-22 20:39 ` [dpdk-dev] [PATCH v4 0/5] replace blacklist/whitelist with block/allow Stephen Hemminger
2020-10-22 20:39 ` [dpdk-dev] [PATCH v4 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-22 20:39 ` [dpdk-dev] [PATCH v4 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-22 20:40 ` [dpdk-dev] [PATCH v4 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-22 20:40 ` [dpdk-dev] [PATCH v4 4/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-22 20:40 ` [dpdk-dev] [PATCH v4 5/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-10-24 1:01 ` [dpdk-dev] [PATCH v5 0/5] replace blacklist/whitelist with block/allow Stephen Hemminger
2020-10-24 1:01 ` [dpdk-dev] [PATCH v5 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-24 1:01 ` [dpdk-dev] [PATCH v5 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-24 1:01 ` [dpdk-dev] [PATCH v5 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-24 16:43 ` Stephen Hemminger
2020-10-24 1:01 ` [dpdk-dev] [PATCH v5 4/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-24 1:01 ` [dpdk-dev] [PATCH v5 5/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-11-05 8:27 ` [dpdk-dev] [PATCH v5 0/5] replace blacklist/whitelist with block/allow David Marchand
2020-11-05 17:02 ` Stephen Hemminger
2020-10-25 16:57 ` [dpdk-dev] [PATCH v6 0/5] replace blacklist/whitelist with allow/block Stephen Hemminger
2020-10-25 16:57 ` [dpdk-dev] [PATCH v6 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-25 16:57 ` [dpdk-dev] [PATCH v6 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-25 16:57 ` [dpdk-dev] [PATCH v6 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-25 16:57 ` [dpdk-dev] [PATCH v6 4/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-25 18:47 ` David Marchand
2020-10-25 21:25 ` Stephen Hemminger
2020-10-25 16:57 ` [dpdk-dev] [PATCH v6 5/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-10-25 20:57 ` [dpdk-dev] [PATCH v7 0/5] replace blacklist/whitelist with allow/block Stephen Hemminger
2020-10-25 20:57 ` [dpdk-dev] [PATCH v7 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-25 20:57 ` [dpdk-dev] [PATCH v7 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-25 20:57 ` [dpdk-dev] [PATCH v7 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-25 20:57 ` [dpdk-dev] [PATCH v7 4/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-10-25 20:57 ` [dpdk-dev] [PATCH v7 5/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-25 21:15 ` [dpdk-dev] [PATCH v8 0/5] replace blacklist/whitelist with allow/block Stephen Hemminger
2020-10-25 21:15 ` [dpdk-dev] [PATCH v8 1/5] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-10-25 21:15 ` [dpdk-dev] [PATCH v8 2/5] drivers: replace references to blacklist Stephen Hemminger
2020-10-25 21:15 ` [dpdk-dev] [PATCH v8 3/5] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-10-25 21:15 ` [dpdk-dev] [PATCH v8 4/5] doc: change references to blacklist and whitelist Stephen Hemminger
2020-10-25 21:15 ` [dpdk-dev] [PATCH v8 5/5] app/test: use new allowlist and blocklist Stephen Hemminger
2020-10-29 15:31 ` [dpdk-dev] [PATCH v8 0/5] replace blacklist/whitelist with allow/block Stephen Hemminger
2020-11-05 22:35 ` [dpdk-dev] [PATCH v9 0/6] " Stephen Hemminger
2020-11-05 22:35 ` [dpdk-dev] [PATCH v9 1/6] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-11-09 13:49 ` Bruce Richardson
2020-11-09 15:54 ` Stephen Hemminger
2020-11-09 16:03 ` David Marchand
2020-11-09 16:05 ` Bruce Richardson
2020-11-09 16:07 ` David Marchand
2020-11-09 16:10 ` Bruce Richardson
2020-11-09 16:20 ` Stephen Hemminger
2020-11-09 16:03 ` Bruce Richardson
2020-11-10 12:33 ` Luca Boccassi
2020-11-10 16:40 ` Stephen Hemminger
2020-11-10 16:46 ` Luca Boccassi
2020-11-05 22:35 ` [dpdk-dev] [PATCH v9 2/6] drivers: replace references to blacklist Stephen Hemminger
2020-11-05 22:35 ` [dpdk-dev] [PATCH v9 3/6] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-11-05 22:36 ` [dpdk-dev] [PATCH v9 4/6] app/test: use new allowlist and blocklist Stephen Hemminger
2020-11-05 22:36 ` [dpdk-dev] [PATCH v9 5/6] doc: change references to blacklist and whitelist Stephen Hemminger
2020-11-10 12:59 ` Luca Boccassi
2020-11-10 16:09 ` Bruce Richardson
2020-11-05 22:36 ` [dpdk-dev] [PATCH v9 6/6] doc: update release notes now for block allow changes Stephen Hemminger
2020-11-10 16:10 ` Bruce Richardson
2020-11-10 22:57 ` Stephen Hemminger
2020-11-10 13:56 ` [dpdk-dev] [PATCH v9 0/6] replace blacklist/whitelist with allow/block Luca Boccassi
2020-11-10 16:14 ` Bruce Richardson
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 0/7] " Stephen Hemminger
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 1/7] eal: replace usage of blacklist/whitelist in enum Stephen Hemminger
2020-11-11 10:43 ` Luca Boccassi
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 2/7] drivers: replace references to blacklist Stephen Hemminger
2020-11-11 10:45 ` Luca Boccassi
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 3/7] eal: replace pci-whitelist/pci-blacklist options Stephen Hemminger
2020-11-11 10:45 ` Luca Boccassi
2020-11-15 18:54 ` Thomas Monjalon
2020-11-15 20:02 ` Thomas Monjalon
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 4/7] doc: update documentation to reflect new options Stephen Hemminger
2020-11-11 10:46 ` Luca Boccassi
2020-11-15 19:58 ` Thomas Monjalon
2020-11-15 20:00 ` Thomas Monjalon
2020-11-15 21:38 ` Thomas Monjalon
2020-11-15 21:44 ` Thomas Monjalon
2020-11-15 19:50 ` Thomas Monjalon
2020-11-15 21:56 ` Thomas Monjalon
2020-11-15 21:59 ` Thomas Monjalon
2020-11-15 22:27 ` Thomas Monjalon
2020-11-10 22:55 ` Stephen Hemminger [this message]
2020-11-11 10:46 ` [dpdk-dev] [PATCH v10 5/7] app/test: use new allowlist and blocklist Luca Boccassi
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 6/7] auto test comment fix Stephen Hemminger
2020-11-11 10:47 ` Luca Boccassi
2020-11-10 22:55 ` [dpdk-dev] [PATCH v10 7/7] eal: mark old definitions as deprecated Stephen Hemminger
2020-11-11 10:47 ` Luca Boccassi
2020-11-15 22:53 ` [dpdk-dev] [PATCH v11 0/4] replace blacklist/whitelist with block/allow Thomas Monjalon
2020-11-15 22:53 ` [dpdk-dev] [PATCH v11 1/4] eal: replace usage of blacklist/whitelist in enums Thomas Monjalon
2020-11-15 22:53 ` [dpdk-dev] [PATCH v11 2/4] eal: replace blacklist/whitelist options Thomas Monjalon
2020-11-15 22:53 ` [dpdk-dev] [PATCH v11 3/4] test: rename blacklist/whitelist in autotest scripts Thomas Monjalon
2020-11-15 22:53 ` [dpdk-dev] [PATCH v11 4/4] doc: replace usage of blacklist/whitelist 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=20201110225544.1876-6-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=bluca@debian.org \
--cc=dev@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).