From: Georgi Valkov <gvalkov@xxxxxxxxx> The cleanup precedure in ipheth_probe will attempt to free a NULL pointer in dev->ctrl_buf if the memory allocation for this buffer is not successful. While kfree ignores NULL pointers, and the existing code is safe, it is a better design to rearrange the goto labels and avoid this. Signed-off-by: Georgi Valkov <gvalkov@xxxxxxxxx> Signed-off-by: Foster Snowhill <forst@xxxxxx> --- v3: - Reword commit msg to indicate design improvement rather than bugfix - Add missing signoff for Foster Snowhill No code changes v2: https://lore.kernel.org/netdev/20230525194255.4516-1-forst@xxxxxx/ - Factor out goto label change from v1 into this separate patch v1: n/a Part of https://lore.kernel.org/netdev/20230516210127.35841-1-forst@xxxxxx/ --- drivers/net/usb/ipheth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/usb/ipheth.c b/drivers/net/usb/ipheth.c index 6a769df0b..8875a3d0e 100644 --- a/drivers/net/usb/ipheth.c +++ b/drivers/net/usb/ipheth.c @@ -510,8 +510,8 @@ static int ipheth_probe(struct usb_interface *intf, ipheth_free_urbs(dev); err_alloc_urbs: err_get_macaddr: -err_alloc_ctrl_buf: kfree(dev->ctrl_buf); +err_alloc_ctrl_buf: err_endpoints: free_netdev(netdev); return retval; -- 2.40.1