Re: [PATCH rdma-rc 2/2] RDMA/core: Initialize lock when allocate a rdma_hw_stats structure
From: Jason Gunthorpe
Date: Mon Oct 25 2021 - 10:51:21 EST
On Sun, Oct 24, 2021 at 09:08:21AM +0300, Leon Romanovsky wrote:
> From: Mark Zhang <markzhang@xxxxxxxxxx>
>
> Initialize the rdma_hw_stats "lock" field when do allocation, to fix the
> warning below. Then we don't need to initialize it in sysfs, remove it.
This is a fine cleanup, but this does not describe the bug properly,
or have the right fixes line..
The issue is here:
static struct rdma_counter *alloc_and_bind(struct ib_device *dev, u32 port,
struct ib_qp *qp,
enum rdma_nl_counter_mode mode)
{
counter->stats = dev->ops.counter_alloc_stats(counter);
if (!counter->stats)
goto err_stats;
Which does not init counter->stat's mutex.
And trim the oops reports, don't include the usless ? fns, timestamps
or other junk.
Jason