[dpdk-dev] app/test: fix crash of lpm test
Checks
Commit Message
The test recently added accesses to lpm->tbl8[ip >> 8] with is much
larger than the size of the table, causing a crash of the test
application.
Fix this typo by replacing tbl8 by tbl24.
Fixes: 231fa88ed522 ("app/test: verify LPM tbl8 recycle")
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
---
Hi Wei,
I don't know lpm very well and I did not spend much time to understand
the test case. I guess that's the proper fix, but please check carefully
that I'm not doing something wrong :)
Thanks,
Olivier
app/test/test_lpm.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
Comments
Hi, Oliver
Thanks for your catching this bug.
After reviewing related codes, I can acknowledge it.
Thanks
-Wei
> -----Original Message-----
> From: Olivier Matz [mailto:olivier.matz@6wind.com]
> Sent: Wednesday, November 9, 2016 9:08 PM
> To: dev@dpdk.org; Dai, Wei <wei.dai@intel.com>
> Cc: Richardson, Bruce <bruce.richardson@intel.com>
> Subject: [PATCH] app/test: fix crash of lpm test
>
> The test recently added accesses to lpm->tbl8[ip >> 8] with is much larger than
> the size of the table, causing a crash of the test application.
>
> Fix this typo by replacing tbl8 by tbl24.
>
> Fixes: 231fa88ed522 ("app/test: verify LPM tbl8 recycle")
>
> Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Wei Dai <wei.dai@intle.com>
> ---
>
> Hi Wei,
>
> I don't know lpm very well and I did not spend much time to understand the
> test case. I guess that's the proper fix, but please check carefully that I'm not
> doing something wrong :)
>
> Thanks,
> Olivier
>
>
> app/test/test_lpm.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/app/test/test_lpm.c b/app/test/test_lpm.c index 80e0efc..41ae80f
> 100644
> --- a/app/test/test_lpm.c
> +++ b/app/test/test_lpm.c
> @@ -1256,7 +1256,7 @@ test18(void)
> rte_lpm_add(lpm, ip, depth, next_hop);
>
> TEST_LPM_ASSERT(lpm->tbl24[ip>>8].valid_group);
> - tbl8_group_index = lpm->tbl8[ip>>8].group_idx;
> + tbl8_group_index = lpm->tbl24[ip>>8].group_idx;
>
> depth = 23;
> next_hop = 2;
> @@ -1272,7 +1272,7 @@ test18(void)
> rte_lpm_add(lpm, ip, depth, next_hop);
>
> TEST_LPM_ASSERT(lpm->tbl24[ip>>8].valid_group);
> - TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl8[ip>>8].group_idx);
> + TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl24[ip>>8].group_idx);
>
> depth = 24;
> next_hop = 4;
> @@ -1288,7 +1288,7 @@ test18(void)
> rte_lpm_add(lpm, ip, depth, next_hop);
>
> TEST_LPM_ASSERT(lpm->tbl24[ip>>8].valid_group);
> - TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl8[ip>>8].group_idx);
> + TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl24[ip>>8].group_idx);
>
> rte_lpm_free(lpm);
> #undef group_idx
> --
> 2.8.1
> > The test recently added accesses to lpm->tbl8[ip >> 8] with is much larger than
> > the size of the table, causing a crash of the test application.
> >
> > Fix this typo by replacing tbl8 by tbl24.
> >
> > Fixes: 231fa88ed522 ("app/test: verify LPM tbl8 recycle")
> >
> > Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
> Acked-by: Wei Dai <wei.dai@intle.com>
Applied, thanks
@@ -1256,7 +1256,7 @@ test18(void)
rte_lpm_add(lpm, ip, depth, next_hop);
TEST_LPM_ASSERT(lpm->tbl24[ip>>8].valid_group);
- tbl8_group_index = lpm->tbl8[ip>>8].group_idx;
+ tbl8_group_index = lpm->tbl24[ip>>8].group_idx;
depth = 23;
next_hop = 2;
@@ -1272,7 +1272,7 @@ test18(void)
rte_lpm_add(lpm, ip, depth, next_hop);
TEST_LPM_ASSERT(lpm->tbl24[ip>>8].valid_group);
- TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl8[ip>>8].group_idx);
+ TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl24[ip>>8].group_idx);
depth = 24;
next_hop = 4;
@@ -1288,7 +1288,7 @@ test18(void)
rte_lpm_add(lpm, ip, depth, next_hop);
TEST_LPM_ASSERT(lpm->tbl24[ip>>8].valid_group);
- TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl8[ip>>8].group_idx);
+ TEST_LPM_ASSERT(tbl8_group_index == lpm->tbl24[ip>>8].group_idx);
rte_lpm_free(lpm);
#undef group_idx