]> git.droids-corp.org - dpdk.git/commitdiff
raw/ioat: fix config script queue size calculation
authorKevin Laatz <kevin.laatz@intel.com>
Fri, 16 Jul 2021 13:21:55 +0000 (13:21 +0000)
committerDavid Marchand <david.marchand@redhat.com>
Tue, 20 Jul 2021 13:28:43 +0000 (15:28 +0200)
The queue size calculation is currently based on "max_tokens" rather than
"max_work_queues_size". This is resulting in the queue size being
incorrectly configured when using the script to configure devices bound to
the IDXD kernel driver.
This patch fixes this miscalculation so devices are configured with
appropriate queue size.

Fixes: 01863b9d2354 ("raw/ioat: include example configuration script")
Cc: stable@dpdk.org
Reported-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
drivers/raw/ioat/dpdk_idxd_cfg.py

index 83ef4817dbabca5f37afdb4e803c348e7ccf65a2..fcc27822efcca085e0e78aa04a890e1fa0cc0d78 100755 (executable)
@@ -63,7 +63,7 @@ def configure_dsa(dsa_id, queues, prefix):
     max_groups = dsa_dir.read_int("max_groups")
     max_engines = dsa_dir.read_int("max_engines")
     max_queues = dsa_dir.read_int("max_work_queues")
-    max_tokens = dsa_dir.read_int("max_tokens")
+    max_work_queues_size = dsa_dir.read_int("max_work_queues_size")
 
     nb_queues = min(queues, max_queues)
     if queues > nb_queues:
@@ -82,7 +82,7 @@ def configure_dsa(dsa_id, queues, prefix):
                              "mode": "dedicated",
                              "name": f"{prefix}_wq{dsa_id}.{q}",
                              "priority": 1,
-                             "size": int(max_tokens / nb_queues)})
+                             "size": int(max_work_queues_size / nb_queues)})
 
     # enable device and then queues
     drv_dir.write_values({"bind": f"dsa{dsa_id}"})