DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] pcap: fix compilation error introduced by kvargs
@ 2014-03-02 21:51 Olivier Matz
  2014-03-19 13:44 ` Thomas Monjalon
  0 siblings, 1 reply; 2+ messages in thread
From: Olivier Matz @ 2014-03-02 21:51 UTC (permalink / raw)
  To: dev; +Cc: mirots

Due to a merge conflict between commits 4c745617a1 and 9d5752d80,
rte_eth_pcap.c was not compiling with the following error:

rte_eth_pcap.c: In function 'rte_pmd_init_internals':
rte_eth_pcap.c:559:30: error: dereferencing pointer to incomplete type
rte_eth_pcap.c:560:15: error: dereferencing pointer to incomplete type
rte_eth_pcap.c:561:18: error: dereferencing pointer to incomplete type
rte_eth_pcap.c:603:47: error: dereferencing pointer to incomplete type
rte_eth_pcap.c: In function 'rte_pmd_pcap_init':
rte_eth_pcap.c:732:73: error: 'dict' undeclared (first use in this
  function)
rte_eth_pcap.c:732:73: note: each undeclared identifier is reported
  only once for each function it appears in

This commit replaces "struct args_dict" by "struct rte_kvargs" to fix
the compilation issue.

By the way, it also removes the declaration of these functions from
the header file as no other file in DPDK references one of them. It
avoids to include <rte_kvargs.h> in rte_eth_pcap.h.

Pointed-out-by: Meir Tseitlin <mirots@gmail.com>
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
---
 lib/librte_pmd_pcap/rte_eth_pcap.c | 27 ++++++++++++++-------------
 lib/librte_pmd_pcap/rte_eth_pcap.h | 17 -----------------
 2 files changed, 14 insertions(+), 30 deletions(-)

diff --git a/lib/librte_pmd_pcap/rte_eth_pcap.c b/lib/librte_pmd_pcap/rte_eth_pcap.c
index 03e6e6c..fbafd19 100644
--- a/lib/librte_pmd_pcap/rte_eth_pcap.c
+++ b/lib/librte_pmd_pcap/rte_eth_pcap.c
@@ -549,15 +549,15 @@ rte_pmd_init_internals(const unsigned nb_rx_queues,
 		const unsigned numa_node,
 		struct pmd_internals **internals,
 		struct rte_eth_dev **eth_dev,
-		struct args_dict *dict)
+		struct rte_kvargs *kvlist)
 {
 	struct rte_eth_dev_data *data = NULL;
 	struct rte_pci_device *pci_dev = NULL;
 	unsigned k_idx;
-	struct key_value *pair = NULL;
+	struct rte_kvargs_pair *pair = NULL;
 
-	for (k_idx = 0; k_idx < dict->index; k_idx++) {
-		pair = &dict->pairs[k_idx];
+	for (k_idx = 0; k_idx < kvlist->count; k_idx++) {
+		pair = &kvlist->pairs[k_idx];
 		if (strstr(pair->key, ETH_PCAP_IFACE_ARG) != NULL)
 			break;
 	}
@@ -626,13 +626,13 @@ rte_pmd_init_internals(const unsigned nb_rx_queues,
 	return -1;
 }
 
-int
+static int
 rte_eth_from_pcaps_n_dumpers(pcap_t * const rx_queues[],
 		const unsigned nb_rx_queues,
 		pcap_dumper_t * const tx_queues[],
 		const unsigned nb_tx_queues,
 		const unsigned numa_node,
-		struct args_dict *dict)
+		struct rte_kvargs *kvlist)
 {
 	struct pmd_internals *internals = NULL;
 	struct rte_eth_dev *eth_dev = NULL;
@@ -645,7 +645,7 @@ rte_eth_from_pcaps_n_dumpers(pcap_t * const rx_queues[],
 		return -1;
 
 	if (rte_pmd_init_internals(nb_rx_queues, nb_tx_queues, numa_node,
-		        &internals, &eth_dev, dict) < 0)
+			&internals, &eth_dev, kvlist) < 0)
 		return -1;
 
 	for (i = 0; i < nb_rx_queues; i++) {
@@ -661,13 +661,13 @@ rte_eth_from_pcaps_n_dumpers(pcap_t * const rx_queues[],
 	return 0;
 }
 
-int
+static int
 rte_eth_from_pcaps(pcap_t * const rx_queues[],
 		const unsigned nb_rx_queues,
 		pcap_t * const tx_queues[],
 		const unsigned nb_tx_queues,
 		const unsigned numa_node,
-		struct args_dict *dict)
+		struct rte_kvargs *kvlist)
 {
 	struct pmd_internals *internals = NULL;
 	struct rte_eth_dev *eth_dev = NULL;
@@ -680,7 +680,7 @@ rte_eth_from_pcaps(pcap_t * const rx_queues[],
 		return -1;
 
 	if (rte_pmd_init_internals(nb_rx_queues, nb_tx_queues, numa_node,
-		        &internals, &eth_dev, dict) < 0)
+			&internals, &eth_dev, kvlist) < 0)
 		return -1;
 
 	for (i = 0; i < nb_rx_queues; i++) {
@@ -729,7 +729,8 @@ rte_pmd_pcap_init(const char *name, const char *params)
 		if (ret < 0)
 			return -1;
 
-		return rte_eth_from_pcaps(pcaps.pcaps, 1, pcaps.pcaps, 1, numa_node, &dict);
+		return rte_eth_from_pcaps(pcaps.pcaps, 1, pcaps.pcaps, 1,
+				numa_node, kvlist);
 	}
 
 	/*
@@ -770,10 +771,10 @@ rte_pmd_pcap_init(const char *name, const char *params)
 
 	if (using_dumpers)
 		return rte_eth_from_pcaps_n_dumpers(pcaps.pcaps, pcaps.num_of_rx,
-			        dumpers.dumpers, dumpers.num_of_tx, numa_node, &dict);
+				dumpers.dumpers, dumpers.num_of_tx, numa_node, kvlist);
 
 	return rte_eth_from_pcaps(pcaps.pcaps, pcaps.num_of_rx, dumpers.pcaps,
-			dumpers.num_of_tx, numa_node, &dict);
+			dumpers.num_of_tx, numa_node, kvlist);
 
 }
 
diff --git a/lib/librte_pmd_pcap/rte_eth_pcap.h b/lib/librte_pmd_pcap/rte_eth_pcap.h
index c0bc5d8..344b78d 100644
--- a/lib/librte_pmd_pcap/rte_eth_pcap.h
+++ b/lib/librte_pmd_pcap/rte_eth_pcap.h
@@ -47,23 +47,6 @@ extern "C" {
 
 #define RTE_ETH_PCAP_PARAM_NAME "eth_pcap"
 
-/* struct args_dict is declared in rte_eth_pcap_args_parser.h */
-struct args_dict;
-
-int rte_eth_from_pcaps(pcap_t * const rx_queues[],
-		const unsigned nb_rx_queues,
-		pcap_t * const tx_queues[],
-		const unsigned nb_tx_queues,
-		const unsigned numa_node,
-		struct args_dict *dict);
-
-int rte_eth_from_pcaps_n_dumpers(pcap_t * const rx_queues[],
-		const unsigned nb_rx_queues,
-		pcap_dumper_t * const tx_queues[],
-		const unsigned nb_tx_queues,
-		const unsigned numa_node,
-		struct args_dict *dict);
-
 /**
  * For use by the EAL only. Called as part of EAL init to set up any dummy NICs
  * configured on command line.
-- 
1.8.5.3

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [dpdk-dev] [PATCH] pcap: fix compilation error introduced by kvargs
  2014-03-02 21:51 [dpdk-dev] [PATCH] pcap: fix compilation error introduced by kvargs Olivier Matz
@ 2014-03-19 13:44 ` Thomas Monjalon
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Monjalon @ 2014-03-19 13:44 UTC (permalink / raw)
  To: Olivier Matz; +Cc: dev, mirots

02/03/2014 22:51, Olivier Matz :
> Due to a merge conflict between commits 4c745617a1 and 9d5752d80,
> rte_eth_pcap.c was not compiling with the following error:
> 
> rte_eth_pcap.c: In function 'rte_pmd_init_internals':
> rte_eth_pcap.c:559:30: error: dereferencing pointer to incomplete type
> rte_eth_pcap.c:560:15: error: dereferencing pointer to incomplete type
> rte_eth_pcap.c:561:18: error: dereferencing pointer to incomplete type
> rte_eth_pcap.c:603:47: error: dereferencing pointer to incomplete type
> rte_eth_pcap.c: In function 'rte_pmd_pcap_init':
> rte_eth_pcap.c:732:73: error: 'dict' undeclared (first use in this
>   function)
> rte_eth_pcap.c:732:73: note: each undeclared identifier is reported
>   only once for each function it appears in
> 
> This commit replaces "struct args_dict" by "struct rte_kvargs" to fix
> the compilation issue.
> 
> By the way, it also removes the declaration of these functions from
> the header file as no other file in DPDK references one of them. It
> avoids to include <rte_kvargs.h> in rte_eth_pcap.h.
> 
> Pointed-out-by: Meir Tseitlin <mirots@gmail.com>
> Signed-off-by: Olivier Matz <olivier.matz@6wind.com>

I missed it when applying the patches. Sorry for the inconvenience.
It's now acked and applied.
-- 
Thomas

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-03-19 13:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-02 21:51 [dpdk-dev] [PATCH] pcap: fix compilation error introduced by kvargs Olivier Matz
2014-03-19 13:44 ` Thomas Monjalon

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).