* [bug report] devlink: Add support for resource abstraction
@ 2018-09-19 12:01 Dan Carpenter
0 siblings, 0 replies; only message in thread
From: Dan Carpenter @ 2018-09-19 12:01 UTC (permalink / raw)
To: kernel-janitors
[ It's weird that I didn't send this email earlier - dan ]
Hello Arkadi Sharshevsky,
The patch d9f9b9a4d05f: "devlink: Add support for resource
abstraction" from Jan 15, 2018, leads to the following static checker
warning:
net/core/devlink.c:2604 devlink_resource_fill()
error: double free of 'skb'
net/core/devlink.c
2582 }
2583 i++;
2584 }
2585 nla_nest_end(skb, resources_attr);
2586 genlmsg_end(skb, hdr);
2587 if (incomplete)
2588 goto start_again;
2589 send_done:
2590 nlh = nlmsg_put(skb, info->snd_portid, info->snd_seq,
2591 NLMSG_DONE, 0, flags | NLM_F_MULTI);
2592 if (!nlh) {
2593 err = devlink_dpipe_send_and_alloc_skb(&skb, info);
^^^^
Smatch says that some error paths free *pskb. This seems like a legit
thing. Of course, kfree_skb() only really frees it after we drop
the last reference and I don't know how the refcounting works here.
2594 if (err)
2595 goto err_skb_send_alloc;
^^^^^^^^^^^^^^^^^^^^^^^^
2596 goto send_done;
2597 }
2598 return genlmsg_reply(skb, info);
2599
2600 nla_put_failure:
2601 err = -EMSGSIZE;
2602 err_resource_put:
2603 err_skb_send_alloc:
2604 nlmsg_free(skb);
^^^
2605 return err;
2606 }
regards,
dan carpenter
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2018-09-19 12:01 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-19 12:01 [bug report] devlink: Add support for resource abstraction Dan Carpenter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox