[dts] [PATCH 2/2] framework dut: fix hugepage not allocate to all numa
Yong Liu
yong.liu at intel.com
Thu Jan 21 03:57:00 CET 2016
From: Marvin Liu <yong.liu at intel.com>
When numa allocate only to numa 0, testpmd may failed to startup for NIC
attached to numa 1.
Signed-off-by: Marvin Liu <yong.liu at intel.com>
diff --git a/framework/dut.py b/framework/dut.py
index afb5204..bd437cb 100644
--- a/framework/dut.py
+++ b/framework/dut.py
@@ -289,21 +289,27 @@ class Dut(Crb):
return
hugepages_size = self.send_expect("awk '/Hugepagesize/ {print $2}' /proc/meminfo", "# ")
total_huge_pages = self.get_total_huge_pages()
+ force_socket = False
if int(hugepages_size) < (1024 * 1024):
if self.architecture == "x86_64":
arch_huge_pages = hugepages if hugepages > 0 else 4096
elif self.architecture == "i686":
arch_huge_pages = hugepages if hugepages > 0 else 512
+ force_socket = True
# set huge pagesize for x86_x32 abi target
elif self.architecture == "x86_x32":
arch_huge_pages = hugepages if hugepages > 0 else 256
+ force_socket = True
if total_huge_pages != arch_huge_pages:
- # before all hugepage average distribution by all socket,
- # but sometimes crete mbuf pool on socket 0 failed when setup testpmd,
+ # before all hugepage average distribution by all socket,
+ # but sometimes create mbuf pool on socket 0 failed when setup testpmd,
# so set all huge page on socket 0
- self.set_huge_pages(arch_huge_pages, 0)
+ if force_socket:
+ self.set_huge_pages(arch_huge_pages, 0)
+ else:
+ self.set_huge_pages(arch_huge_pages)
self.mount_huge_pages()
self.hugepage_path = self.strip_hugepage_path()
--
2.4.3
More information about the dts
mailing list