Re: [PATCH] drivers/net: release skb on failure

From: Jakub Kicinski
Date: Fri Sep 20 2019 - 21:51:22 EST


On Tue, 17 Sep 2019 23:45:21 -0500, Navid Emamdoost wrote:
> In ql_run_loopback_test, ql_lb_send does not release skb when fails. So
> it must be released before returning.
>
> Signed-off-by: Navid Emamdoost <navid.emamdoost@xxxxxxxxx>
> ---
> drivers/net/ethernet/qlogic/qlge/qlge_ethtool.c | 4 +++-

Thanks for the patch, this driver has been moved, please see

commit 955315b0dc8c8641311430f40fbe53990ba40e33
Author: Benjamin Poirier <bpoirier@xxxxxxxx>
Date: Tue Jul 23 15:14:13 2019 +0900

qlge: Move drivers/net/ethernet/qlogic/qlge/ to
drivers/staging/qlge/
The hardware has been declared EOL by the vendor more than 5 years
ago. What's more relevant to the Linux kernel is that the quality
of this driver is not on par with many other mainline drivers.

Cc: Manish Chopra <manishc@xxxxxxxxxxx>
Message-id: <20190617074858.32467-1-bpoirier@xxxxxxxx>
Signed-off-by: Benjamin Poirier <bpoirier@xxxxxxxx>
Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

Could you rebase, and send the new version to GregKH as he is the
stable maintainer?

> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/qlogic/qlge/qlge_ethtool.c b/drivers/net/ethernet/qlogic/qlge/qlge_ethtool.c
> index a6886cc5654c..d539b71b2a5c 100644
> --- a/drivers/net/ethernet/qlogic/qlge/qlge_ethtool.c
> +++ b/drivers/net/ethernet/qlogic/qlge/qlge_ethtool.c
> @@ -544,8 +544,10 @@ static int ql_run_loopback_test(struct ql_adapter *qdev)
> skb_put(skb, size);
> ql_create_lb_frame(skb, size);
> rc = ql_lb_send(skb, qdev->ndev);
> - if (rc != NETDEV_TX_OK)
> + if (rc != NETDEV_TX_OK) {
> + dev_kfree_skb_any(skb);
> return -EPIPE;
> + }
> atomic_inc(&qdev->lb_count);
> }
> /* Give queue time to settle before testing results. */