[PATCH] net: usb: qmi_wwan: Add error handling for usbnet_get_ethernet_addr

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In qmi_wwan_bind(), usbnet_get_ethernet_addr() is called
without error handling, risking unnoticed failures and
inconsistent behavior compared to other parts of the code.

Fix this issue by adding an error handling for the
usbnet_get_ethernet_addr(), improving code robustness.

Fixes: 423ce8caab7e ("net: usb: qmi_wwan: New driver for Huawei QMI based WWAN devices")
Signed-off-by: Wentao Liang <vulab@xxxxxxxxxxx>
---
 drivers/net/usb/qmi_wwan.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c
index e9208a8d2bfa..7aa576bfe76b 100644
--- a/drivers/net/usb/qmi_wwan.c
+++ b/drivers/net/usb/qmi_wwan.c
@@ -779,7 +779,9 @@ static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf)
 	/* errors aren't fatal - we can live with the dynamic address */
 	if (cdc_ether && cdc_ether->wMaxSegmentSize) {
 		dev->hard_mtu = le16_to_cpu(cdc_ether->wMaxSegmentSize);
-		usbnet_get_ethernet_addr(dev, cdc_ether->iMACAddress);
+		status = usbnet_get_ethernet_addr(dev, cdc_ether->iMACAddress);
+		if (status < 0)
+			goto err;
 	}
 
 	/* claim data interface and set it up */
-- 
2.42.0.windows.2





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux