diff options
Diffstat (limited to 'support/dpdk-21.11.4/dpdk-21.11.4-dpdk-devbind-dump.patch')
| -rw-r--r-- | support/dpdk-21.11.4/dpdk-21.11.4-dpdk-devbind-dump.patch | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/support/dpdk-21.11.4/dpdk-21.11.4-dpdk-devbind-dump.patch b/support/dpdk-21.11.4/dpdk-21.11.4-dpdk-devbind-dump.patch new file mode 100644 index 0000000..e4b4026 --- /dev/null +++ b/support/dpdk-21.11.4/dpdk-21.11.4-dpdk-devbind-dump.patch @@ -0,0 +1,71 @@ +--- dpdk-stable-21.11.4/usertools/dpdk-devbind.py 2023-05-17 07:27:18.000000000 -0400 ++++ dpdk-stable-21.11.4-mr4/usertools/dpdk-devbind.py 2023-06-26 07:47:31.226072861 -0400 +@@ -8,6 +8,7 @@ import os + import subprocess + import argparse + import platform ++import json + + from glob import glob + from os.path import exists, basename +@@ -95,6 +96,7 @@ loaded_modules = None + # command-line arg flags + b_flag = None + status_flag = False ++dump_flag = False + force_flag = False + args = [] + +@@ -577,6 +579,11 @@ def show_device_status(devices_type, dev + display_devices("%s devices using kernel driver" % device_name, kernel_drv, + if_text + "drv=%(Driver_str)s " + "unused=%(Module_str)s %(Active)s") ++ if dump_flag and dump_path == 'stdout': ++ print(kernel_drv) ++ if dump_flag and dump_path != 'stdout': ++ f = open(dump_path, "w") ++ f.write(json.dumps(kernel_drv, sort_keys=True,indent=4)) + if no_drv: + display_devices("Other %s devices" % device_name, no_drv, + "unused=%(Module_str)s") +@@ -635,6 +642,8 @@ def parse_args(): + global status_dev + global force_flag + global args ++ global dump_flag ++ global dump_path + + parser = argparse.ArgumentParser( + description='Utility to bind and unbind devices from Linux kernel', +@@ -649,6 +658,9 @@ To display current device status: + To display current network device status: + %(prog)s --status-dev net + ++To dump current kernel network device status for json: ++ %(prog)s --status-dev net --dump ('stdout' | 'path') ++ + To bind eth1 from the current driver and move to use vfio-pci + %(prog)s --bind=vfio-pci eth1 + +@@ -669,6 +681,11 @@ To bind 0000:02:00.0 and 0000:02:00.1 to + help="Print the status of given device group.", + choices=['baseband', 'compress', 'crypto', 'dma', 'event', + 'mempool', 'misc', 'net', 'regex']) ++ parser.add_argument( ++ '-d', ++ '--dump', ++ help="Dump the status of kernel net group.") ++ + bind_group = parser.add_mutually_exclusive_group() + bind_group.add_argument( + '-b', +@@ -701,6 +718,9 @@ For devices bound to Linux kernel driver + if opt.status_dev: + status_flag = True + status_dev = opt.status_dev ++ if opt.dump: ++ dump_flag = True ++ dump_path = opt.dump + if opt.status: + status_flag = True + status_dev = "all" |
