After dpdk tests completes, cleaning up hugepage map files created by tests is helpful to release used memory into hugepage memory allocator.
Signed-off-by: Gowrishankar Muthukrishnan <[email protected]> --- tests/system-dpdk-macros.at | 13 +++++++++++++ tests/system-dpdk.at | 7 +++++++ 2 files changed, 20 insertions(+) diff --git a/tests/system-dpdk-macros.at b/tests/system-dpdk-macros.at index c6708ca..b3a46d1 100644 --- a/tests/system-dpdk-macros.at +++ b/tests/system-dpdk-macros.at @@ -1,3 +1,16 @@ +# OVS_DPDK_HUGEPAGE_CLEANUP([file]) +# +# Cleanup system for stale hugepages. +# +m4_define([OVS_DPDK_HUGEPAGE_CLEANUP], + [dnl Cleanup mapping files in hugetlbfs mount point + AT_CHECK([cat /proc/mounts | grep hugetlbfs], [], [stdout]) + AT_CHECK([cut -d ' ' -f 2 stdout], [], [stdout]) + AT_CHECK([rm -f $(cat stdout)/$1], [], []) + +]) + + # OVS_DPDK_PRE_CHECK() # # Check prerequisites for DPDK tests. Following settings are checked: diff --git a/tests/system-dpdk.at b/tests/system-dpdk.at index a015d52..01ac970 100644 --- a/tests/system-dpdk.at +++ b/tests/system-dpdk.at @@ -16,6 +16,7 @@ OVS_VSWITCHD_STOP(["/Global register is changed during/d /EAL: Invalid NUMA socket, default to 0/d /EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !/d /EAL: No free hugepages reported in hugepages-1048576kB/d"]) +OVS_DPDK_HUGEPAGE_CLEANUP([rtemap_*]) AT_CLEANUP dnl -------------------------------------------------------------------------- @@ -43,6 +44,7 @@ OVS_VSWITCHD_STOP("/does not exist. The Open vSwitch kernel module is probably n /EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !/d /EAL: No free hugepages reported in hugepages-1048576kB/d ") +OVS_DPDK_HUGEPAGE_CLEANUP([rtemap_*]) AT_CLEANUP dnl -------------------------------------------------------------------------- @@ -75,6 +77,7 @@ OVS_VSWITCHD_STOP(["\@does not exist. The Open vSwitch kernel module is probably \@EAL: Invalid NUMA socket, default to 0@d \@EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !@d \@EAL: No free hugepages reported in hugepages-1048576kB@d"]) +OVS_DPDK_HUGEPAGE_CLEANUP([rtemap_*]) AT_CLEANUP dnl -------------------------------------------------------------------------- @@ -154,6 +157,8 @@ OVS_VSWITCHD_STOP(["\@does not exist. The Open vSwitch kernel module is probably \@EAL: Invalid NUMA socket, default to 0@d \@EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !@d \@EAL: No free hugepages reported in hugepages-1048576kB@d"]) +OVS_DPDK_HUGEPAGE_CLEANUP([rtemap_*]) +OVS_DPDK_HUGEPAGE_CLEANUP([page0map_0]) AT_CLEANUP dnl -------------------------------------------------------------------------- @@ -230,5 +235,7 @@ OVS_VSWITCHD_STOP(["\@does not exist. The Open vSwitch kernel module is probably \@EAL: Invalid NUMA socket, default to 0@d \@EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !@d \@EAL: No free hugepages reported in hugepages-1048576kB@d"]) +OVS_DPDK_HUGEPAGE_CLEANUP([rtemap_*]) +OVS_DPDK_HUGEPAGE_CLEANUP([page0map_0]) AT_CLEANUP dnl -------------------------------------------------------------------------- -- 1.8.3.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
