[dpdk-dev] [PATCH] devbind: don't display non-existent device categories
Anatoly Burakov
anatoly.burakov at intel.com
Tue Nov 13 17:42:09 CET 2018
If there aren't any devices of a particular category on user's
system, we still display them, which is bad for usability. Fix
devbind to not print out a category unless there are devices in
it.
Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
---
usertools/dpdk-devbind.py | 27 ++++++++++++++++++++-------
1 file changed, 20 insertions(+), 7 deletions(-)
diff --git a/usertools/dpdk-devbind.py b/usertools/dpdk-devbind.py
index 7d564634c..9f190e227 100755
--- a/usertools/dpdk-devbind.py
+++ b/usertools/dpdk-devbind.py
@@ -546,14 +546,27 @@ def show_device_status(devices_type, device_name):
else:
kernel_drv.append(devices[d])
+ n_devs = len(dpdk_drv) + len(kernel_drv) + len(no_drv)
+
+ # don't bother displaying anything if there are no devices
+ if n_devs == 0:
+ msg = "No '%s' devices detected" % device_name
+ print("")
+ print(msg)
+ print("".join('=' * len(msg)))
+ return
+
# print each category separately, so we can clearly see what's used by DPDK
- display_devices("%s devices using DPDK-compatible driver" % device_name,
- dpdk_drv, "drv=%(Driver_str)s unused=%(Module_str)s")
- display_devices("%s devices using kernel driver" % device_name, kernel_drv,
- "if=%(Interface)s drv=%(Driver_str)s "
- "unused=%(Module_str)s %(Active)s")
- display_devices("Other %s devices" % device_name, no_drv,
- "unused=%(Module_str)s")
+ if len(dpdk_drv) != 0:
+ display_devices("%s devices using DPDK-compatible driver" % device_name,
+ dpdk_drv, "drv=%(Driver_str)s unused=%(Module_str)s")
+ if len(kernel_drv) != 0:
+ display_devices("%s devices using kernel driver" % device_name, kernel_drv,
+ "if=%(Interface)s drv=%(Driver_str)s "
+ "unused=%(Module_str)s %(Active)s")
+ if len(no_drv) != 0:
+ display_devices("Other %s devices" % device_name, no_drv,
+ "unused=%(Module_str)s")
def show_status():
'''Function called when the script is passed the "--status" option.
--
2.17.1
More information about the dev
mailing list