[dpdk-dev] [PATCH] autotests: fix mempool element size in func_reentrancy

2016-04-11 Thread Olivier Matz


On 04/11/2016 12:12 PM, Thomas Monjalon wrote:
> 2016-04-11 11:33, Olivier Matz:
>> --- a/app/test/test_func_reentrancy.c
>> +++ b/app/test/test_func_reentrancy.c
>> @@ -78,7 +78,7 @@ typedef void (*case_clean_t)(unsigned lcore_id);
>>  #define MAX_ITER_TIMES  (16)
>>  #define MAX_LPM_ITER_TIMES  (8)
>>  
>> -#define MEMPOOL_ELT_SIZE(0)
>> +#define MEMPOOL_ELT_SIZE(sizeof(uint32))
> 
> I understand the idea of the patch.
> Using uint32_t would probably make a good fix ;)
> Applied correctly, thanks

You perfectly got the idea :)
Thanks and sorry for the typo...


[dpdk-dev] [PATCH] autotests: fix mempool element size in func_reentrancy

2016-04-11 Thread Thomas Monjalon
2016-04-11 11:33, Olivier Matz:
> --- a/app/test/test_func_reentrancy.c
> +++ b/app/test/test_func_reentrancy.c
> @@ -78,7 +78,7 @@ typedef void (*case_clean_t)(unsigned lcore_id);
>  #define MAX_ITER_TIMES  (16)
>  #define MAX_LPM_ITER_TIMES  (8)
>  
> -#define MEMPOOL_ELT_SIZE(0)
> +#define MEMPOOL_ELT_SIZE(sizeof(uint32))

I understand the idea of the patch.
Using uint32_t would probably make a good fix ;)
Applied correctly, thanks


[dpdk-dev] [PATCH] autotests: fix mempool element size in func_reentrancy

2016-04-11 Thread Olivier Matz
The mempool element size is set to 0, but 4 bytes are written in
my_obj_init():

  uint32_t *objnum = obj;
  memset(obj, 0, mp->elt_size);
  *objnum = i;

Change the MEMPOOL_ELT_SIZE constant to sizeof(uint32_t). This fixes
memory corruptions since we were writting outside of the object
boundaries.

Fixes: 104a92bd026 ("app: add reentrancy tests")
Signed-off-by: Olivier Matz 
---
 app/test/test_func_reentrancy.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/test/test_func_reentrancy.c b/app/test/test_func_reentrancy.c
index 300a3bc..e5b2821 100644
--- a/app/test/test_func_reentrancy.c
+++ b/app/test/test_func_reentrancy.c
@@ -78,7 +78,7 @@ typedef void (*case_clean_t)(unsigned lcore_id);
 #define MAX_ITER_TIMES  (16)
 #define MAX_LPM_ITER_TIMES  (8)

-#define MEMPOOL_ELT_SIZE(0)
+#define MEMPOOL_ELT_SIZE(sizeof(uint32))
 #define MEMPOOL_SIZE(4)

 #define MAX_LCORES RTE_MAX_MEMZONE / (MAX_ITER_TIMES * 4U)
-- 
2.1.4