[dpdk-dev] [PATCH v4 2/7] mempool: add mempool arg in xmem size and usage

santosh santosh.shukla at caviumnetworks.com
Mon Sep 4 16:33:53 CEST 2017



On Monday 04 September 2017 07:52 PM, Olivier MATZ wrote:
> On Tue, Aug 15, 2017 at 11:37:38AM +0530, Santosh Shukla wrote:
>> xmem_size and xmem_usage need to know the status of mp->flag.
>> Following patch will make use of that.
>>
>> Signed-off-by: Santosh Shukla <santosh.shukla at caviumnetworks.com>
>> ---
>>  drivers/net/xenvirt/rte_mempool_gntalloc.c |  5 +++--
>>  lib/librte_mempool/rte_mempool.c           | 10 ++++++----
>>  lib/librte_mempool/rte_mempool.h           |  8 ++++++--
>>  test/test/test_mempool.c                   |  4 ++--
>>  4 files changed, 17 insertions(+), 10 deletions(-)
>>
>> diff --git a/drivers/net/xenvirt/rte_mempool_gntalloc.c b/drivers/net/xenvirt/rte_mempool_gntalloc.c
>> index 73e82f808..ee0bda459 100644
>> --- a/drivers/net/xenvirt/rte_mempool_gntalloc.c
>> +++ b/drivers/net/xenvirt/rte_mempool_gntalloc.c
>> @@ -114,7 +114,7 @@ _create_mempool(const char *name, unsigned elt_num, unsigned elt_size,
>>  	pg_shift = rte_bsf32(pg_sz);
>>  
>>  	rte_mempool_calc_obj_size(elt_size, flags, &objsz);
>> -	sz = rte_mempool_xmem_size(elt_num, objsz.total_size, pg_shift);
>> +	sz = rte_mempool_xmem_size(elt_num, objsz.total_size, pg_shift, NULL);
>>  	pg_num = sz >> pg_shift;
>>  
>>  	pa_arr = calloc(pg_num, sizeof(pa_arr[0]));
> What is the meaning of passing NULL to rte_mempool_xmem_size()?
> Does it mean that flags are ignored?

Yes that mean flags are ignored.

> Wouldn't it be better to pass the mempool flags instead of the mempool
> pointer?

Keeping mempool as param rather flag useful in case user want to do/refer more
thing in future for xmem_size/usage() api. Otherwise he has append one more param
to api and send out deprecation notice.. Btw, its const param so won;t hurt right?

However if you still want to restrict param to mp->flags then pl. suggest.

Thanks. 




More information about the dev mailing list