net: rtnetlink: fix error handling in rtnl_fill_statsinfo()
The clang static analyzer reports this issue rtnetlink.c:5481:2: warning: Undefined or garbage value returned to caller return err; ^~~~~~~~~~ There is a function level err variable, in the list_for_each_entry_rcu block there is a shadow err. Remove the shadow. In the same block, the call to nla_nest_start_noflag() can fail without setting an err. Set the err to -EMSGSIZE. Fixes: 216e690631f5 ("net: rtnetlink: rtnl_fill_statsinfo(): Permit non-EMSGSIZE error returns") Signed-off-by: Tom Rix <trix@redhat.com> Reviewed-by: Ido Schimmel <idosch@nvidia.com> Reviewed-by: Petr Machata <petrm@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cd5169841c
commit
57d29a2935
@ -5440,12 +5440,12 @@ static int rtnl_fill_statsinfo(struct sk_buff *skb, struct net_device *dev,
|
||||
list_for_each_entry_rcu(af_ops, &rtnl_af_ops, list) {
|
||||
if (af_ops->fill_stats_af) {
|
||||
struct nlattr *af;
|
||||
int err;
|
||||
|
||||
af = nla_nest_start_noflag(skb,
|
||||
af_ops->family);
|
||||
if (!af) {
|
||||
rcu_read_unlock();
|
||||
err = -EMSGSIZE;
|
||||
goto nla_put_failure;
|
||||
}
|
||||
err = af_ops->fill_stats_af(skb, dev);
|
||||
|
Loading…
x
Reference in New Issue
Block a user