On Thu, Jul 21, 2016 at 8:15 AM, Alexei Starovoitov
<alexei.starovoi...@gmail.com> wrote:
> On Thu, Jul 21, 2016 at 01:20:02AM +0300, Saeed Mahameed wrote:
>> From: Hadar Hen Zion <had...@mellanox.com>
>>
>> Add support for query the minimum inline mode from the Firmware.
>> It is required for correct TX steering according to L3/L4 packet
>> headers.
>>
>> Each send queue (SQ) has inline mode that defines the minimal required
>> headers that needs to be copied into the SQ WQE.
>> The driver asks the Firmware for the wqe_inline_mode device capability
>> value.  In case the device capability defined as "vport context" the
>> driver must check the reported min inline mode from the vport context
>> before creating its SQs.
>>
>> Signed-off-by: Hadar Hen Zion <had...@mellanox.com>
>> Signed-off-by: Saeed Mahameed <sae...@mellanox.com>
> ...
>> +     int outlen = MLX5_ST_SZ_BYTES(query_nic_vport_context_out);
>> +     u32 *out;
>> +
>> +     out = mlx5_vzalloc(outlen);
>> +     if (!out)
>> +             return;
>
> Just discovered this...
> outlen is a small constant here, yet you want to try to vmalloc it?
> What is the point?
> There are 67 places in mlx5 where failed kmalloc is retried with
> vmalloc... was that path ever tested?

The point is that there are a lot of places in the code that want to
allocate huge commands and mlx5_vzalloc is a nice black box that
provides the method to allocate such huge chunks of memory.

Now sometimes people tend to reuse same pieces of code for code consistency.

I don't see any harm from doing that.

Reply via email to