[dpdk-dev] [PATCH] devbind: don't display non-existent device categories

Wiles, Keith keith.wiles at intel.com
Thu Nov 15 15:06:18 CET 2018



> On Nov 15, 2018, at 7:27 AM, Hunt, David <david.hunt at intel.com> wrote:
> 
> Hi Anatoly,
> 
> On 13/11/2018 4:42 PM, Anatoly Burakov wrote:
>> 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.
> 
> 
> I REALLY like this patch. It makes the dpdk-devbind output MUCH more readable!
> 

I even modified my version of dpdk-devbind to do just that as it keep scrolling off the screen. I was going to get around to sending a patch. :-)

The output should be a compressed as possible, to me even the ‘=======‘ lines are not required if you indented the information lines by a couple spaces. But that does not need to be done in this patch.

> Reviewed-by: David Hunt <david.hunt at intel.com>

Regards,
Keith



More information about the dev mailing list