Go to file
Mark Asselstine df86b009dd usertools: remove devbind module search corner cases
The existing code used to search for module files via modinfo has
several corner cases which can result in it failing where it should be
successful.

The call to lower() would cause results returned by 'modinfo' to be
forced to lowercase, results which were subsequently passed to
exists() which is case sensitive. This was most likely done to capture
all variants of failure strings modinfo might return
(ie. ERROR/Error/error/...)  without thought negative effect to the
later call to exists(). For many this is a nonissue but if the module
path included non-lowercase alpha characters, something which is
easily possible with a non-lowercase kernel-extraversion string, this
would cause an issue.

We could move the call to lower() to the check for "error" but this
still leaves possible corner cases, for modules or module paths with
'error' in them.

Instead we will prevent modinfo's stderr from being used as a "good
value" for path, meaning we either get a valid path from modinfo, or
nothing at all. This removes all corner cases.

Ultimately these preliminary checks are unnecessary as exists() will
only return True if it is passed a valid path, passing it modinfo's
stderr would fail. In keeping with the original code, however, we do
some preliminary checks, but we are now free of corner cases.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
2017-05-01 23:58:31 +02:00
app app/proc-info: support xstats by ID and by name 2017-05-01 23:48:39 +02:00
buildtools mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
config config: make AVX and AVX512 configurable 2017-04-30 23:17:53 +02:00
devtools vhost: fix header for strict compilation flags 2017-05-01 00:13:15 +02:00
doc ethdev: retrieve xstats by ID 2017-05-01 23:48:11 +02:00
drivers net/ixgbe: support xstats by ID 2017-05-01 23:48:39 +02:00
examples examples/ethtool: fix link with ixgbe shared lib 2017-05-01 22:03:37 +02:00
lib ethdev: get xstats ID by name 2017-05-01 23:48:37 +02:00
mk config: make AVX and AVX512 configurable 2017-04-30 23:17:53 +02:00
pkg version: 17.02.0 2017-02-14 22:17:45 +01:00
test test/crypto: add DPAA2 crypto functional test 2017-04-20 11:32:45 +02:00
usertools usertools: remove devbind module search corner cases 2017-05-01 23:58:31 +02:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore devtools: add tags and cscope index generation 2017-04-30 12:57:04 +02:00
GNUmakefile mk: do not build tests by default 2017-02-28 16:04:18 +01:00
LICENSE.GPL doc: GPL/LGPL licenses 2013-07-25 14:43:06 +02:00
LICENSE.LGPL doc: fix file format (dos to unix) 2013-09-06 11:43:07 +02:00
MAINTAINERS doc: add NXP DPAA2 SEC 2017-04-20 11:32:45 +02:00
Makefile remove trailing whitespaces 2014-06-11 00:29:34 +02:00
README doc: add readme file 2015-12-13 22:06:58 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD license for the core libraries and
drivers. The kernel components are GPLv2 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org