[dpdk-dev] [PATCH v1 09/29] mem: add iovec-like allocation wrappers
Ferruh Yigit
ferruh.yigit at intel.com
Thu Oct 12 00:00:00 CEST 2017
On 10/11/2017 10:58 PM, Ferruh Yigit wrote:
> On 10/11/2017 3:35 PM, Adrien Mazarguil wrote:
>> These wrappers implement the ability to allocate room for several disparate
>> objects as a single contiguous allocation while complying with their
>> respective alignment constraints.
>>
>> This is usually more efficient than allocating and freeing them
>> individually if they are not expected to be reallocated with rte_realloc().
>>
>> A typical use case is when several objects that cannot be dissociated must
>> be allocated together, as shown in the following example:
>>
>> struct b {
>> ...
>> struct d *d;
>> }
>>
>> struct a {
>> ...
>> struct b *b;
>> struct c *c;
>> }
>>
>> struct rte_malloc_vec vec[] = {
>> { .size = sizeof(struct a), .addr = &ptr_a, }
>> { .size = sizeof(struct b), .addr = &ptr_b, },
>> { .size = sizeof(struct c), .addr = &ptr_c, },
>> { .size = sizeof(struct d), .addr = &ptr_d, },
>> };
>>
>> if (!rte_mallocv(NULL, vec, RTE_DIM(vec)))
>> goto error;
>>
>> struct a *a = ptr_a;
>>
>> a->b = ptr_b;
>> a->c = ptr_c;
>> a->b->d = ptr_d;
>> ...
>> rte_free(a);
>>
>> Signed-off-by: Adrien Mazarguil <adrien.mazarguil at 6wind.com>
>> Acked-by: Nelio Laranjeiro <nelio.laranjeiro at 6wind.com>
>
> Hi Adrien,
>
> Why there is an eal patch in the middle of the mlx4 patchset?
>
> I believe this shouldn't go in via next-net tree, and should be reviewed
> properly.
>
> I am behaving more flexible for PMD patches about the process and
> timing, because their scope is limited.
> PMD patches can break at most the PMD itself and if the maintainer is
> sending the patch, they should be knowing what they are doing, so vendor
> gets the responsibility for their own driver. I am paying majority of
> care to be sure it doesn't break others.
>
> But ethdev and eal way beyond those flexibility, because their scope is
> much larger.
>
> Can you please extract this patch from the patchset?
cc'ed Thomas.
More information about the dev
mailing list