[dpdk-dev] [PATCH v6 16/17] app/testpmd: fix build with musl
From: Thomas Monjalon <hidden>
Date: 2021-02-28 12:56:33
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Natanael Copa <redacted>
1/ Improve portability by avoiding use of non-standard 'uint'.
Use uint8_t for hash_key_len as rss_key_len is a uint8_t type.
This solves following build error when building with musl libc:
app/test-pmd/testpmd.h:813:29: error: unknown type name 'uint'
2/ In musl libc, stdout is of type (FILE * const).
Because of the const qualifier, a dark magic cast
must be achieved through uintptr_t.
Fixes: 8205e241b2b0 ("app/testpmd: add missing type to RSS hash commands")
Fixes: e977e4199a8d ("app/testpmd: add commands to load/unload BPF filters")
Cc: stable@dpdk.org
Signed-off-by: Natanael Copa <redacted>
Reviewed-by: Morten Brørup <redacted>
Signed-off-by: Thomas Monjalon <redacted>
---
app/test-pmd/bpf_cmd.c | 2 +-
app/test-pmd/config.c | 2 +-
app/test-pmd/testpmd.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/test-pmd/bpf_cmd.c b/app/test-pmd/bpf_cmd.c
index 066619e115..6980291f07 100644
--- a/app/test-pmd/bpf_cmd.c
+++ b/app/test-pmd/bpf_cmd.c@@ -20,7 +20,7 @@ static const struct rte_bpf_xsym bpf_xsym[] = { .name = RTE_STR(stdout), .type = RTE_BPF_XTYPE_VAR, .var = { - .val = &stdout, + .val = (void *)(uintptr_t)&stdout, .desc = { .type = RTE_BPF_ARG_PTR, .size = sizeof(stdout),
diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c
index dab8afe5dd..9ca03c236e 100644
--- a/app/test-pmd/config.c
+++ b/app/test-pmd/config.c@@ -2963,7 +2963,7 @@ port_rss_hash_conf_show(portid_t port_id, int show_rss_key) void port_rss_hash_key_update(portid_t port_id, char rss_type[], uint8_t *hash_key, - uint hash_key_len) + uint8_t hash_key_len) { struct rte_eth_rss_conf rss_conf; int diag;
diff --git a/app/test-pmd/testpmd.h b/app/test-pmd/testpmd.h
index 4aca522859..5437b6229e 100644
--- a/app/test-pmd/testpmd.h
+++ b/app/test-pmd/testpmd.h@@ -935,7 +935,7 @@ int set_vf_rate_limit(portid_t port_id, uint16_t vf, uint16_t rate, void port_rss_hash_conf_show(portid_t port_id, int show_rss_key); void port_rss_hash_key_update(portid_t port_id, char rss_type[], - uint8_t *hash_key, uint hash_key_len); + uint8_t *hash_key, uint8_t hash_key_len); int rx_queue_id_is_invalid(queueid_t rxq_id); int tx_queue_id_is_invalid(queueid_t txq_id); void setup_gro(const char *onoff, portid_t port_id);
--
2.30.1