In some usages, kvlist is processed one time in rte_kvargs_process(), and it is processed a second time if need to check whether it was matched. In order to simplify implementation of kvargs checks, a new callback may be used for "no match" cases.
The change of the function prototype would be as below: int rte_kvargs_process(const struct rte_kvargs *kvlist, const char *key_match, - arg_handler_t handler, + arg_handler_t match_handler, + arg_handler_t no_match_handler, void *opaque_arg) Signed-off-by: Thomas Monjalon <tho...@monjalon.net> --- doc/guides/rel_notes/deprecation.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 34b28234c..7af65cd4b 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -11,6 +11,10 @@ API and ABI deprecation notices are to be posted here. Deprecation Notices ------------------- +* kvargs: The function ``rte_kvargs_process`` will get a new parameter + for a function pointer called in case of no match of the key. + It will ease implementation of default values or check for mandatory keys. + * eal: both declaring and identifying devices will be streamlined in v18.11. New functions will appear to query a specific port from buses, classes of device and device drivers. Device declaration will be made coherent with the -- 2.19.0