Re: [PATCH net-next] devlink: fix return of uninitialized variable err
From: Jakub Kicinski <kuba@kernel.org>
Date: 2021-01-10 00:44:17
On Fri, 8 Jan 2021 21:21:13 +0800 wangyunjian wrote:
From: Yunjian Wang <redacted>
There is a potential execution path in which variable err is
returned without being properly initialized previously. Fix
this by initializing variable err to 0.
Addresses-Coverity: ("Uninitialized scalar variable")
Fixes: 1db64e8733f6 ("devlink: Add devlink formatted message (fmsg) API")
Signed-off-by: Yunjian Wang <redacted>Fixes should generally be targeting net, not net-next. I don't think this can trigger. Only devlink_nl_cmd_health_reporter_diagnose_doit() can call here, and before it does it calls devlink_fmsg_obj_nest_start() and end(), so there will at least be DEVLINK_ATTR_FMSG_OBJ_NEST_START to iterate over. Please double check this analysis, and resend the patch with the commit message updated to reflect this is not a bug fix and without the fixes tag.
quoted hunk ↗ jump to hunk
diff --git a/net/core/devlink.c b/net/core/devlink.c index ee828e4b1007..470215cd60b5 100644 --- a/net/core/devlink.c +++ b/net/core/devlink.c@@ -5699,7 +5699,7 @@ devlink_fmsg_prepare_skb(struct devlink_fmsg *fmsg, struct sk_buff *skb, struct devlink_fmsg_item *item; struct nlattr *fmsg_nlattr; int i = 0; - int err; + int err = 0;
Please order variable declaration lines longest to shortest. err should be before i.
fmsg_nlattr = nla_nest_start_noflag(skb, DEVLINK_ATTR_FMSG); if (!fmsg_nlattr)