From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6171F73451; Tue, 11 Nov 2025 00:47:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762822041; cv=none; b=pDTxF3yQPSQZrjc8FxfZx/lCQK++GclMZoDsg8+uKiJ+mzhywjbbDuzdgMdl9dTa+u0owfp1co/0+ISmPWG/VUaV3wzk8kmBAh0ymTulBK/SHb6qU6XSGzKvI+/hPELo3GL84xblSb6xjWtz29WoL9mHoBl1LsINZfqr+9qm8BA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762822041; c=relaxed/simple; bh=w4RhXjH1+TYLM1urmjjvLHGHYKmCHY+rGX9vFVeZiVc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=J5M3sHX0Sds4ucd+uKOaDWJQTcWMEUD3KNL9VXVqvr7847zXsBfzOD/u2pto01ulsfKOLOxmKUgzc4lXTqe05ZAYd+LPGykcQ/erGUo8jyfb1OPHoWp/f597Rf3ZqUvxxxt4zviwblrH7rbzbI3YT2p2HYX1SFqG/sdU1x8Cr80= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=nPZPOal/; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="nPZPOal/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B792BC2BC86; Tue, 11 Nov 2025 00:47:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1762822041; bh=w4RhXjH1+TYLM1urmjjvLHGHYKmCHY+rGX9vFVeZiVc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nPZPOal/dfSzEDTy2aRajLuC9OHAshU0+rZGO9EC5RucQ1p4O/xwjN/RljWwjOp31 tVb0CvbSxzgLKcqX2T/iVDyfUc6Jx+bRP624XvUA9OQb0BNcfOgINSO8yam6RRvg+q axNIvziPJS/PxlrLI5K8UkAhjQ/Cm0bWXO7UedqU= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Miaoqian Lin , Jakub Kicinski Subject: [PATCH 6.12 002/565] net: usb: asix_devices: Check return value of usbnet_get_endpoints Date: Tue, 11 Nov 2025 09:37:38 +0900 Message-ID: <20251111004526.887254757@linuxfoundation.org> X-Mailer: git-send-email 2.51.2 In-Reply-To: <20251111004526.816196597@linuxfoundation.org> References: <20251111004526.816196597@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.12-stable review patch. If anyone has any objections, please let me know. ------------------ From: Miaoqian Lin commit dc89548c6926d68dfdda11bebc1a5258bc41d887 upstream. The code did not check the return value of usbnet_get_endpoints. Add checks and return the error if it fails to transfer the error. Found via static anlaysis and this is similar to commit 07161b2416f7 ("sr9800: Add check for usbnet_get_endpoints"). Fixes: 933a27d39e0e ("USB: asix - Add AX88178 support and many other changes") Fixes: 2e55cc7210fe ("[PATCH] USB: usbnet (3/9) module for ASIX Ethernet adapters") Cc: stable@vger.kernel.org Signed-off-by: Miaoqian Lin Link: https://patch.msgid.link/20251026164318.57624-1-linmq006@gmail.com Signed-off-by: Jakub Kicinski Signed-off-by: Greg Kroah-Hartman --- drivers/net/usb/asix_devices.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) --- a/drivers/net/usb/asix_devices.c +++ b/drivers/net/usb/asix_devices.c @@ -230,7 +230,9 @@ static int ax88172_bind(struct usbnet *d int i; unsigned long gpio_bits = dev->driver_info->data; - usbnet_get_endpoints(dev,intf); + ret = usbnet_get_endpoints(dev, intf); + if (ret) + goto out; /* Toggle the GPIOs in a manufacturer/model specific way */ for (i = 2; i >= 0; i--) { @@ -848,7 +850,9 @@ static int ax88772_bind(struct usbnet *d dev->driver_priv = priv; - usbnet_get_endpoints(dev, intf); + ret = usbnet_get_endpoints(dev, intf); + if (ret) + return ret; /* Maybe the boot loader passed the MAC address via device tree */ if (!eth_platform_get_mac_address(&dev->udev->dev, buf)) { @@ -1281,7 +1285,9 @@ static int ax88178_bind(struct usbnet *d int ret; u8 buf[ETH_ALEN] = {0}; - usbnet_get_endpoints(dev,intf); + ret = usbnet_get_endpoints(dev, intf); + if (ret) + return ret; /* Get the MAC address */ ret = asix_read_cmd(dev, AX_CMD_READ_NODE_ID, 0, 0, ETH_ALEN, buf, 0);