[dpdk-dev] [PATCH 00/11] add rte_kvargs library: a key/value args parser

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


The topic of this patchset is to add a new rte_kvargs library that
can be used as a helper to parse key/value arguments. The code will
be based on rte_eth_pcap_arg_parser and reworked with documentation
and tests. It also fix some minor issues of the original code.

These commits will allow another library (like pmd_ring) to parse
arguments in an easier way without duplicating the code.

Olivier Matz (11):
  kvargs: add a new library to parse key/value arguments
  kvargs: use the new library in pmd_pcap
  kvargs: remove driver name in arguments
  kvargs: remove useless size field
  kvargs: rework API to fix memory leak
  kvargs: simpler parsing and allow duplicated keys
  kvargs: be strict when matching a key
  kvargs: add const attribute in handler parameters
  kvargs: add the key in handler pameters
  kvargs: make the NULL key to match all entries
  kvargs: add test case in app/test

 app/test/Makefile                             |   1 +
 app/test/commands.c                           |   8 +
 app/test/test.h                               |   1 +
 app/test/test_kvargs.c                        | 235 ++++++++++++++++++++++++
 config/defconfig_i686-default-linuxapp-gcc    |   5 +
 config/defconfig_i686-default-linuxapp-icc    |   5 +
 config/defconfig_x86_64-default-linuxapp-gcc  |   5 +
 config/defconfig_x86_64-default-linuxapp-icc  |   5 +
 lib/Makefile                                  |   1 +
 lib/librte_kvargs/Makefile                    |  49 +++++
 lib/librte_kvargs/rte_kvargs.c                | 206 +++++++++++++++++++++
 lib/librte_kvargs/rte_kvargs.h                | 155 ++++++++++++++++
 lib/librte_pmd_pcap/Makefile                  |   8 +-
 lib/librte_pmd_pcap/rte_eth_pcap.c            |  44 ++---
 lib/librte_pmd_pcap/rte_eth_pcap_arg_parser.c | 255 --------------------------
 lib/librte_pmd_pcap/rte_eth_pcap_arg_parser.h |  71 -------
 lib/librte_pmd_ring/rte_eth_ring.c            |   2 +
 mk/rte.app.mk                                 |   4 +
 18 files changed, 709 insertions(+), 351 deletions(-)
 create mode 100644 app/test/test_kvargs.c
 create mode 100644 lib/librte_kvargs/Makefile
 create mode 100644 lib/librte_kvargs/rte_kvargs.c
 create mode 100644 lib/librte_kvargs/rte_kvargs.h
 delete mode 100644 lib/librte_pmd_pcap/rte_eth_pcap_arg_parser.c
 delete mode 100644 lib/librte_pmd_pcap/rte_eth_pcap_arg_parser.h

-- 
1.8.4.rc3



More information about the dev mailing list