]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
can: gs_usb: gs_usb_receive_bulk_callback(): fix error message
authorMarc Kleine-Budde <mkl@pengutronix.de>
Tue, 20 Jan 2026 09:40:22 +0000 (10:40 +0100)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Fri, 23 Jan 2026 17:16:37 +0000 (18:16 +0100)
Sinc commit 79a6d1bfe114 ("can: gs_usb: gs_usb_receive_bulk_callback():
unanchor URL on usb_submit_urb() error") a failing resubmit URB will print
an info message.

In the case of a short read where netdev has not yet been assigned,
initialize as NULL to avoid dereferencing an undefined value. Also report
the error value of the failed resubmit.

Fixes: 79a6d1bfe114 ("can: gs_usb: gs_usb_receive_bulk_callback(): unanchor URL on usb_submit_urb() error")
Reported-by: Jakub Kicinski <kuba@kernel.org>
Closes: https://lore.kernel.org/all/20260119181904.1209979-1-kuba@kernel.org/
Link: https://patch.msgid.link/20260120-gs_usb-fix-error-message-v1-1-6be04de572bc@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/usb/gs_usb.c

index 192338b481f21f279f4b4d636652e5e4a47bdb12..d8b2dd74b3a1a4b51a43219edba17f4a5f968df0 100644 (file)
@@ -610,7 +610,7 @@ static void gs_usb_receive_bulk_callback(struct urb *urb)
 {
        struct gs_usb *parent = urb->context;
        struct gs_can *dev;
-       struct net_device *netdev;
+       struct net_device *netdev = NULL;
        int rc;
        struct net_device_stats *stats;
        struct gs_host_frame *hf = urb->transfer_buffer;
@@ -768,7 +768,7 @@ device_detach:
                }
        } else if (rc != -ESHUTDOWN && net_ratelimit()) {
                netdev_info(netdev, "failed to re-submit IN URB: %pe\n",
-                           ERR_PTR(urb->status));
+                           ERR_PTR(rc));
        }
 }