[dpdk-dev] [PATCH 0/7] dpdk-devbind.py refactor

Jerin Jacob jerin.jacob at caviumnetworks.com
Wed Mar 22 15:11:25 CET 2017


This patchset refactor the dpdk-devbind.py script to

1) Optimize the bind and status operation delay(It is noticeable
when the system has fairly large number of PCIe device. For instance,
OCTEONTX system has around 170 PCIe devices and it takes around
19 seconds to bind devices. With this patch it is reduced to less
than one seconds)

Patch 3 and 4 address this optimization

2) There is a lot of common code in NIC and crypto device
to get the device info, display status.

Patch 1 and 2 create a common code to add new devices
without duplicating the code

3) This patch creates the framework to define the DPDK PCI functional
device by specifying the pci attributes like Vendor ID, Device ID,
Sub Vendor ID, Sub Device ID and Class.This enables a flexible way to
add DPDK function devices based on PCI attributes.

Crypto devices can belong to Encryption class(0x10) or Processor
class(0x0b) based on the vendor preference.

Using this framework, The above disparity can be encoded in the following
format

encryption_class = [{'Class': '10', 'Vendor': None,
                     'Device': None, 'SVendor': None, 'SDevice': None}]

intel_processor_class = [{'Class': '0b', 'Vendor': '8086', 'Device': None,
                        'SVendor': None, 'SDevice': None}]

crypto_devices = [encryption_class, intel_processor_class]

4) Add eventdev, mempool PCI devices support

Guduri Prathyusha (7):
  usertools: refactor the get NIC and crypto details
  usertools: refactor the show status function
  usertools: optimize lspci invocation
  usertools: use optimized driver override scheme to bind
  usertools: define DPDK PCI functional device
  usertools: add eventdev PCI functional device
  usertools: add mempool PCI functional device

 usertools/dpdk-devbind.py | 356 +++++++++++++++++++++++++---------------------
 1 file changed, 195 insertions(+), 161 deletions(-)

-- 
2.5.5



More information about the dev mailing list