[dts] [PATCH V1] fix lpm ipv6 unit case on 1G hugepage machine

Xu, HuilongX huilongx.xu at intel.com
Thu Sep 29 09:20:25 CEST 2016


Yes,
Set hugepage will failed in FreeBSD, but not influence the case exec in FreeBSD.
I think maybe we can rework hugepage config on dts framework next time.
Thanks a  lot  

> -----Original Message-----
> From: Liu, Yong
> Sent: Thursday, September 29, 2016 2:49 PM
> To: Xu, HuilongX; dts at dpdk.org
> Subject: Re: [dts] [PATCH V1] fix lpm ipv6 unit case on 1G hugepage
> machine
> 
> 
> 
> On 09/21/2016 01:28 PM, xu,huilong wrote:
> > Signed-off-by: xu,huilong <huilongx.xu at intel.com>
> > ---
> >   tests/TestSuite_unit_tests_lpm.py | 15 ++++++++++-----
> >   1 file changed, 10 insertions(+), 5 deletions(-)
> >
> > diff --git a/tests/TestSuite_unit_tests_lpm.py
> b/tests/TestSuite_unit_tests_lpm.py
> > index dadb492..7394d19 100644
> > --- a/tests/TestSuite_unit_tests_lpm.py
> > +++ b/tests/TestSuite_unit_tests_lpm.py
> > @@ -83,11 +83,16 @@ class TestUnitTestsLpmIpv6(TestCase):
> >           """
> >           [arch, machine, env, toolchain] = self.target.split('-')
> >           self.verify(arch == "x86_64", "lpm6 request huge memory")
> > -
> > -        hugepage_ori = self.dut.get_total_huge_pages()
> > -        self.dut.set_huge_pages(4096)
> > -        hugepage_num = self.dut.get_total_huge_pages()
> > -        self.verify(hugepage_num >= 4096, "failed to request huge
> memory")
> > +        # lpm ipv6 should leaest 8g huge page
> > +        min_hugepagesz = 8 * 1024 * 1024
> > +
> > +        hugepage_ori = int(self.dut.get_total_huge_pages())
> > +        hugepages_size = int(self.dut.send_expect("awk
> '/Hugepagesize/ {print $2}' /proc/meminfo", "# "))
> > +
> This command can't work on FreeBSD. Again, it's better to let framework
> handle huge allocation/destroy.
> It's hard to each suite handle the difference for distributions.
> 
> > +        if (hugepages_size * hugepage_ori < min_hugepagesz):
> > +            self.dut.set_huge_pages(min_hugepagesz / hugepages_size)
> > +            hugepage_num = self.dut.get_total_huge_pages()
> > +            self.verify(hugepage_num == min_hugepagesz /
> hugepages_size, "failed to request huge memory")
> >
> >           self.dut.send_expect("./app/test/test -n 1 -c ffff",
> "R.*T.*E.*>.*>", 60)
> >           out = self.dut.send_expect("lpm6_autotest", "RTE>>", 3600)



More information about the dts mailing list