eal: fix mempool ops name parsing
authorIvan Malov <ivan.malov@oktetlabs.ru>
Fri, 4 May 2018 10:31:54 +0000 (11:31 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Sun, 13 May 2018 23:32:07 +0000 (01:32 +0200)
commit33b318179162e4be81720d010fa6466fe03c2a84
tree670b6a0369b52c68c8287d669b0246b77b982e41
parent7d3c4fb6de3a21e2a393bf6a1d4b4d11fd65d97b
eal: fix mempool ops name parsing

The code aimed to pick and remember the value of
mempool ops name from EAL command line arguments does not
copy the string and remembers the pointer provided
by getopt_long() directly. The latter could be clobbered
later and result in reading wrong mbuf pool ops name
by rte_mempool library.

Typically, this flaw could be avoided by using strdup()
to remember the string value of the option.

Fixes: a103a97e7191 ("eal: allow user to override default mempool driver")
Cc: stable@dpdk.org
Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
lib/librte_eal/bsdapp/eal/eal.c
lib/librte_eal/linuxapp/eal/eal.c