Re: [PATCH 2/9] habanalabs: zero complex structures using memset

From: Oded Gabbay
Date: Tue Jun 15 2021 - 04:31:55 EST


On Tue, Jun 15, 2021 at 11:27 AM David Laight <David.Laight@xxxxxxxxxx> wrote:
>
> From: Oded Gabbay
> > Sent: 14 June 2021 13:51
> >
> > From: Koby Elbaz <kelbaz@xxxxxxxxx>
> >
> > fix the following sparse warnings:
> > 'warning: Using plain integer as NULL pointer'
> > 'warning: missing braces around initializer'
>
> Sparse is being over-enthusiastic.
>
> ...
> > diff --git a/drivers/misc/habanalabs/common/firmware_if.c
> > b/drivers/misc/habanalabs/common/firmware_if.c
> > index 14e70422af25..d5d0db7fd6ef 100644
> > --- a/drivers/misc/habanalabs/common/firmware_if.c
> > +++ b/drivers/misc/habanalabs/common/firmware_if.c
> > @@ -392,10 +392,11 @@ void hl_fw_cpu_accessible_dma_pool_free(struct hl_device *hdev, size_t size,
> >
> > int hl_fw_send_heartbeat(struct hl_device *hdev)
> > {
> > - struct cpucp_packet hb_pkt = {0};
> > + struct cpucp_packet hb_pkt;
>
> Try just deleting the 0?
> I think modern compilers allow {}.

The problem is we sometimes run on less-than-modern compilers...
So I prefer this method (memset). No harm is done here in any case.
Oded
>
> David
>
> > u64 result;
> > int rc;
> >
> > + memset(&hb_pkt, 0, sizeof(hb_pkt));
> > hb_pkt.ctl = cpu_to_le32(CPUCP_PACKET_TEST <<
> > CPUCP_PKT_CTL_OPCODE_SHIFT);
> > hb_pkt.value = cpu_to_le64(CPUCP_PACKET_FENCE_VAL);
> > --
> > 2.25.1
>
> -
> Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
> Registration No: 1397386 (Wales)
>