[dpdk-dev] [PATCH 03/11] kvargs: remove driver name in arguments

Olivier Matz olivier.matz at 6wind.com
Tue Jan 28 17:06:36 CET 2014


Now that rte_kvargs is a generic library, there is no need to have an argument
for the driver name in rte_kvargs_tokenize() and rte_kvargs_parse()
prototypes. This argument was only used to log the driver name in case of
error. Instead, we can add a log in init function of pmd_pcap and pmd_ring.

Signed-off-by: Olivier Matz <olivier.matz at 6wind.com>
---
 lib/librte_kvargs/rte_kvargs.c     | 13 ++++++-------
 lib/librte_kvargs/rte_kvargs.h     |  4 +---
 lib/librte_pmd_pcap/rte_eth_pcap.c |  4 +++-
 lib/librte_pmd_ring/rte_eth_ring.c |  2 ++
 4 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/lib/librte_kvargs/rte_kvargs.c b/lib/librte_kvargs/rte_kvargs.c
index 7a950d6..935698c 100644
--- a/lib/librte_kvargs/rte_kvargs.c
+++ b/lib/librte_kvargs/rte_kvargs.c
@@ -91,8 +91,7 @@ rte_kvargs_add_pair(struct rte_kvargs *kvlist, char *key, char *val)
  * strtok() is used so the params string will be copied to be modified.
  */
 static int
-rte_kvargs_tokenize(struct rte_kvargs *kvlist, const char *name,
-	const char *params)
+rte_kvargs_tokenize(struct rte_kvargs *kvlist, const char *params)
 {
 	unsigned i, count;
 	char *args;
@@ -101,7 +100,7 @@ rte_kvargs_tokenize(struct rte_kvargs *kvlist, const char *name,
 
 	/* If params are empty, nothing to do */
 	if (params == NULL || params[0] == 0) {
-		RTE_LOG(ERR, PMD, "Couldn't parse %s device, empty arguments\n", name);
+		RTE_LOG(ERR, PMD, "Cannot parse empty arguments\n");
 		return -1;
 	}
 
@@ -110,7 +109,7 @@ rte_kvargs_tokenize(struct rte_kvargs *kvlist, const char *name,
 	 */
 	args = strdup(params);
 	if(args == NULL){
-		RTE_LOG(ERR, PMD, "Couldn't parse %s device \n", name);
+		RTE_LOG(ERR, PMD, "Cannot parse arguments: not enough memory\n");
 		return -1;
 	}
 
@@ -127,7 +126,8 @@ rte_kvargs_tokenize(struct rte_kvargs *kvlist, const char *name,
 		if (pair[0] == NULL || pair[1] == NULL || pair[0][0] == 0
 				|| pair[1][0] == 0) {
 			RTE_LOG(ERR, PMD,
-					"Couldn't parse %s device, wrong key or value \n", name);
+				"Cannot parse arguments: wrong key or value\n"
+				"params=<%s>\n", params);
 			goto error;
 		}
 
@@ -230,14 +230,13 @@ rte_kvargs_process(const struct rte_kvargs *kvlist,
  */
 int
 rte_kvargs_parse(struct rte_kvargs *kvlist,
-		const char *name,
 		const char *args,
 		const char *valid_keys[])
 {
 
 	int ret;
 
-	ret = rte_kvargs_tokenize(kvlist, name, args);
+	ret = rte_kvargs_tokenize(kvlist, args);
 	if (ret < 0)
 		return ret;
 
diff --git a/lib/librte_kvargs/rte_kvargs.h b/lib/librte_kvargs/rte_kvargs.h
index 19485b1..804ea1d 100644
--- a/lib/librte_kvargs/rte_kvargs.h
+++ b/lib/librte_kvargs/rte_kvargs.h
@@ -100,8 +100,6 @@ int rte_kvargs_init(struct rte_kvargs *kvlist);
  *
  * @param kvlist
  *   The rte_kvargs structure
- * @param name
- *   The name of the driver
  * @param args
  *   The input string containing the key/value associations
  * @param valid_keys
@@ -112,7 +110,7 @@ int rte_kvargs_init(struct rte_kvargs *kvlist);
  *   - 0 on success
  *   - Negative on error
  */
-int rte_kvargs_parse(struct rte_kvargs *kvlist, const char *name,
+int rte_kvargs_parse(struct rte_kvargs *kvlist,
 	const char *args, const char *valid_keys[]);
 
 /**
diff --git a/lib/librte_pmd_pcap/rte_eth_pcap.c b/lib/librte_pmd_pcap/rte_eth_pcap.c
index e47afcb..2006b35 100644
--- a/lib/librte_pmd_pcap/rte_eth_pcap.c
+++ b/lib/librte_pmd_pcap/rte_eth_pcap.c
@@ -706,6 +706,8 @@ rte_pmd_pcap_init(const char *name, const char *params)
 	struct rx_pcaps pcaps;
 	struct tx_pcaps dumpers;
 
+	RTE_LOG(INFO, PMD, "Initializing pmd_pcap for %s\n", name);
+
 	rte_kvargs_init(&kvlist);
 
 	numa_node = rte_socket_id();
@@ -714,7 +716,7 @@ rte_pmd_pcap_init(const char *name, const char *params)
 	start_cycles = rte_get_timer_cycles();
 	hz = rte_get_timer_hz();
 
-	if (rte_kvargs_parse(&kvlist, name, params, valid_arguments) < 0)
+	if (rte_kvargs_parse(&kvlist, params, valid_arguments) < 0)
 		return -1;
 
 	/*
diff --git a/lib/librte_pmd_ring/rte_eth_ring.c b/lib/librte_pmd_ring/rte_eth_ring.c
index fa3ff72..abef2e8 100644
--- a/lib/librte_pmd_ring/rte_eth_ring.c
+++ b/lib/librte_pmd_ring/rte_eth_ring.c
@@ -384,6 +384,8 @@ rte_eth_ring_pair_attach(const char *name, const unsigned numa_node)
 int
 rte_pmd_ring_init(const char *name, const char *params)
 {
+	RTE_LOG(INFO, PMD, "Initializing pmd_ring for %s\n", name);
+
 	if (params == NULL)
 		eth_dev_ring_create(name, rte_socket_id(), DEV_CREATE);
 	else {
-- 
1.8.4.rc3



More information about the dev mailing list