lkml.org 
[lkml]   [2021]   [Sep]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH rdma-next v1 04/11] RDMA/counter: Add an is_disabled field in struct rdma_hw_stats
From
Date
On 9/28/2021 12:53 AM, Jason Gunthorpe wrote:
> On Wed, Sep 15, 2021 at 02:07:23AM +0300, Leon Romanovsky wrote:
>
>> diff --git a/drivers/infiniband/core/nldev.c b/drivers/infiniband/core/nldev.c
>> index 3f6b98a87566..67519730b1ac 100644
>> +++ b/drivers/infiniband/core/nldev.c
>> @@ -968,15 +968,21 @@ static int fill_stat_counter_hwcounters(struct sk_buff *msg,
>> if (!table_attr)
>> return -EMSGSIZE;
>> @@ -601,11 +604,20 @@ static inline struct rdma_hw_stats *rdma_alloc_hw_stats_struct(
>> if (!stats)
>> return NULL;
>>
>> + stats->is_disabled = kcalloc(BITS_TO_LONGS(num_counters),
>> + sizeof(long), GFP_KERNEL);
>> + if (!stats->is_disabled)
>> + goto err;
>> +
>
> Please de-inline this function and make a rdma_free_hw_stats_struct()
> call to pair with it. The hw_stats_data kfree should be in there. If
> you do this as a precursor patch this patch will be much smaller.
>
> Also, the
>
> stats = kzalloc(sizeof(*stats) + num_counters * sizeof(u64),
> GFP_KERNEL);
>
> Should be using array_size
Maybe use struct_size:
stats = kzalloc(struct_size(stats, value, num_counters), GFP_KERNEL);

\
 
 \ /
  Last update: 2021-09-28 05:29    [W:0.135 / U:0.104 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site