Re: [PATCH v6 4/7] can: Add Nuvoton NCT6694 CANFD support

From: Ming Yu
Date: Mon Feb 03 2025 - 21:55:54 EST


Dear Simon,

Thank you for reviewing,
I will fix the warning in the next patch.


Best regards,
Ming

Simon Horman <horms@xxxxxxxxxx> 於 2025年1月23日 週四 下午7:09寫道:
>
> On Thu, Jan 23, 2025 at 05:11:12PM +0800, Ming Yu wrote:
> > This driver supports Socket CANFD functionality for NCT6694 MFD
> > device based on USB interface.
> >
> > Signed-off-by: Ming Yu <a0282524688@xxxxxxxxx>
>
> ...
>
> > diff --git a/drivers/net/can/usb/nct6694_canfd.c b/drivers/net/can/usb/nct6694_canfd.c
>
> ...
>
> > +static int nct6694_can_get_clock(struct nct6694_can_priv *priv)
> > +{
> > + struct nct6694_can_information *info;
> > + struct nct6694_cmd_header cmd_hd = {
> > + .mod = NCT6694_CAN_MOD,
> > + .cmd = NCT6694_CAN_INFORMATION,
> > + .sel = NCT6694_CAN_INFORMATION_SEL,
> > + .len = cpu_to_le16(sizeof(*info))
> > + };
> > + int ret, can_clk;
> > +
> > + info = kzalloc(sizeof(*info), GFP_KERNEL);
> > + if (!info)
> > + return -ENOMEM;
> > +
> > + ret = nct6694_read_msg(priv->nct6694, &cmd_hd, info);
> > + if (ret)
> > + goto exit;
>
> Hi Ming Yu,
>
> This goto will result in the function returning can_clk.
> But can_clk is not initialised until the following line.
>
> Flagged by W=1 builds with clang-19, and by Smatch.
>
> > +
> > + can_clk = le32_to_cpu(info->can_clk);
> > +
> > +exit:
> > + kfree(info);
> > + return can_clk;
> > +}
>
> ...