From nobody Thu Apr 9 21:49:52 2026 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 58196345CC9; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=M/NLWVGYxuBW/kLaxkb4/IZkBhRFtZoQKniLMefpNdp4t4Tf4MqbNaZPfpDFpRxUc+GtNdBWPnb0T23ZbBiICEuSdZuxPN5lMaOv8m3iIoGZy9DYHb7vbpE9kn+Zykqt8p77RDC7PbbtPRZaICYxcPbsivoGu0TTO6YTR3leJas= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=JAu4aGrnPPyf8CrNrqLPSHkFG5LAr0AmkxM6UI5mqdE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=c2GvBTO58WNK7BVtoPTu+wjUJNyxIeBNdiU+NJ/HyWf9pnUPzy4JugQ6OaQOQnwVda8sa7DXBoDy8pq6zoTn5ASJXGqGwgqUo7614rkj1/Xto7oA0giXbQRy4GuFTQ1snrHiUCO5VDlCMcky+Fei3Mj/to1vPwpfH9fw3b7yp6A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Z/MpcMgw; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Z/MpcMgw" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0314BC116C6; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=JAu4aGrnPPyf8CrNrqLPSHkFG5LAr0AmkxM6UI5mqdE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Z/MpcMgwq2QvImIVCdhoVkAy+wcdlniZFR2QNnxI2PJ9URJMGIHBtQhMs3DKGEQ+3 Yuy/iUn3aGbS0FtdkFj9usIm+GFRCQHsQCirtgUleKOC2yZW1ywPFKTn/vQh1UGLSI 9ZozXQQk3SNuKeGnVb4DrahNKKh29I0vMTbWp1Fi7307+uNUm3ikwbfwxGH/1Lzlzr elwUM4jNssrIBUOauGmshwgQFLT0rwSMTSALblJ06SZoD9UzZIBsAO37HnKA19SzXU MabR+4YLwy3wA0rrcgmap+q8u4r2D6VaM0/8lylKDR78YLiY0bX50z36Vch0cwfmHv mL1zAwBmuBTJg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004cn-2QT7; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 01/13] wifi: at76c50x: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:01 +0100 Message-ID: <20260305110713.17725-2-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/atmel/at76c50x-usb.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/atmel/at76c50x-usb.c b/drivers/net/wirele= ss/atmel/at76c50x-usb.c index 6445332801a4..44b04ea3cc8b 100644 --- a/drivers/net/wireless/atmel/at76c50x-usb.c +++ b/drivers/net/wireless/atmel/at76c50x-usb.c @@ -2440,13 +2440,11 @@ static int at76_probe(struct usb_interface *interfa= ce, struct mib_fw_version *fwv; int board_type =3D (int)id->driver_info; =20 - udev =3D usb_get_dev(interface_to_usbdev(interface)); + udev =3D interface_to_usbdev(interface); =20 fwv =3D kmalloc_obj(*fwv); - if (!fwv) { - ret =3D -ENOMEM; - goto exit; - } + if (!fwv) + return -ENOMEM; =20 /* Load firmware into kernel memory */ fwe =3D at76_load_firmware(udev, board_type); @@ -2534,8 +2532,7 @@ static int at76_probe(struct usb_interface *interface, =20 exit: kfree(fwv); - if (ret < 0) - usb_put_dev(udev); + return ret; } =20 @@ -2552,7 +2549,6 @@ static void at76_disconnect(struct usb_interface *int= erface) =20 wiphy_info(priv->hw->wiphy, "disconnecting\n"); at76_delete_device(priv); - usb_put_dev(interface_to_usbdev(interface)); dev_info(&interface->dev, "disconnected\n"); } =20 --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 618E5374745; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=e53H5dr1crP4yVmnAvBN5pxtEUy/3vNM69nqwbzM+F/dJC74jrvMTRX17L/cH/Jb4l/4Q0IaN64+eqBH681VzH9gr8nmEvZaHxyqWn6jEwpcNiYzP2nyGmfwd1e+zKLaki/HlOG4kb7o3Ew4rjU0tcq3td4kr6ChjD30VqUjaZM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=kaq0JBNHyQqQlidhi1/aPYh1/H5njyrGvo0l9Tfow5M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=R8h6pgMc7rdbIRIneE9eHKdn5v1flPY9d+F4zWRerG2bY7fQV9XXCsCj08XReYX6PLG1cYAYrMJhbc3nmK2VRly0OTn12xe4OCg50DH7V6RIZawXRJ2cPvzYyKpqRtt1BK58rAGB1OH1zVctiBENfpPg0I8n4UhbWU5JfNse5Yw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=aQTkkoFh; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="aQTkkoFh" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1646BC2BC9E; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=kaq0JBNHyQqQlidhi1/aPYh1/H5njyrGvo0l9Tfow5M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=aQTkkoFhssKdRx0pGljGKTXpqz/w+cu8eDMUVGqWd6jcRCVdhHMLf+ALdT44Fjx2G QIZW5GYHa1moZg5+A3hvPlHFFcQV2RCUrtUGdWr4kDTzfJYgoAJn6DJkTn/Bf4ZPPj r01LS5Qe7lrSjuMC7eCUvHCugmToz9zyCTa9M/3pbVvLzh+EF8S53dRRkCWRQeQ+YQ yqGYGasYaGoyqNFmktO8xf1WSSdFoD7eErayW+EKo1Dfdx27xmqXq5tTsEh+OW2KfA 2qO3u3c75dV4nd7mO30ltdRNrpc9D0P5cv69tJgUBQxnbGTtjKKGwtoEpvmiF9nBdL ioBbh2ofNJI5A== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004cp-2TFX; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 02/13] wifi: libertas: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:02 +0100 Message-ID: <20260305110713.17725-3-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/marvell/libertas/if_usb.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/net/wireless/marvell/libertas/if_usb.c b/drivers/net/w= ireless/marvell/libertas/if_usb.c index 8a6bf1365cfa..05fcf9cc28fa 100644 --- a/drivers/net/wireless/marvell/libertas/if_usb.c +++ b/drivers/net/wireless/marvell/libertas/if_usb.c @@ -276,7 +276,6 @@ static int if_usb_probe(struct usb_interface *intf, =20 cardp->boot2_version =3D udev->descriptor.bcdDevice; =20 - usb_get_dev(udev); usb_set_intfdata(intf, cardp); =20 r =3D lbs_get_firmware_async(priv, &udev->dev, cardp->model, @@ -287,7 +286,6 @@ static int if_usb_probe(struct usb_interface *intf, return 0; =20 err_get_fw: - usb_put_dev(udev); lbs_remove_card(priv); err_add_card: if_usb_reset_device(cardp); @@ -321,7 +319,6 @@ static void if_usb_disconnect(struct usb_interface *int= f) kfree(cardp); =20 usb_set_intfdata(intf, NULL); - usb_put_dev(interface_to_usbdev(intf)); } =20 /** --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 5822F366057; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=PNHON7IHQJsov86v3OP39iPH0Gcr/Y4t0jC9e9S1t+n/6h0mkPaOH1B+7JLlARV43RP86FX1SIfT0pRHsUQsJl12vWA2iXgVmPvy2X6Z4bZ4lJhalIDI10tknNr8HDdwi9TtY7cUn4lcFg+XLTjNowS6LyRkcWFpYfJpnOrm/VE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=Wg9PdiYnvFewTYn81qDhfXqKVkfZq7jAfwyGUQeiiBI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nTp3R2sWzlSAFEq414d6/fx4Isg43c8f4KqPOuRCqwL4Kr9DTRPT+MwCEF5H0cWwi02oeUCqe6Sz1xSzyeJVNfD0pjdIcVOCjEowDuSncOkDoSJJ8NNQrglrlt5p9rnhIy5hLicnhPkjCwu3JE+iSN/sWhUAiMcs+W0qsr5odG0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=F77uYfDE; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="F77uYfDE" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0F1B6C2BCB1; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=Wg9PdiYnvFewTYn81qDhfXqKVkfZq7jAfwyGUQeiiBI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=F77uYfDEj7n+JLq8mRyTJYYoPdW+1ubYpGZn2PgSatGjS20qFwh6GygQDhfNNK83E 1Zyo1blaT7IrNbibzw43jtpyeXJ+1kuIxxSFjonXgvkIgmNnKkJ3yU4S2Jykmcyk0a CEr6EESUottHfqGHLbUeD6W+NgkcCp6rfyE1m1e/kwtBtxohwQIXik2L05lKj7C4yH reX/Y4hnetBvUZG7WxunqgitL7ubLmE8NwBgZohsxuCxx/eJCuP6mq6XEL9eP8sh55 sKAILbFy8FbVN6Mn8UwmsIGbpUl/ZYgAchQIQm2kgIvMOUgeXlXFgdElZD+mGN4LaO lczoS4ryWxz0g== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004cr-2VxD; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 03/13] wifi: libertas_tf: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:03 +0100 Message-ID: <20260305110713.17725-4-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/marvell/libertas_tf/if_usb.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/net/wireless/marvell/libertas_tf/if_usb.c b/drivers/ne= t/wireless/marvell/libertas_tf/if_usb.c index f49151c18b79..07b38f2b8f58 100644 --- a/drivers/net/wireless/marvell/libertas_tf/if_usb.c +++ b/drivers/net/wireless/marvell/libertas_tf/if_usb.c @@ -223,7 +223,6 @@ static int if_usb_probe(struct usb_interface *intf, if (!priv) goto dealloc; =20 - usb_get_dev(udev); usb_set_intfdata(intf, cardp); =20 return 0; @@ -258,7 +257,6 @@ static void if_usb_disconnect(struct usb_interface *int= f) kfree(cardp); =20 usb_set_intfdata(intf, NULL); - usb_put_dev(interface_to_usbdev(intf)); =20 lbtf_deb_leave(LBTF_DEB_MAIN); } --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 7063337E2F8; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=Es51Oh2KrfjIraiNsFCVJJbek5QWuUL7otWU8sTQJDrpwy0xJrXt6sAhpNYzpdOI4iuhwo2gi7B8w9f1dgowq4d6ihYK7EsKbY0a1pkcqLWJ4/69BsauP/e9i9NBGWz4BlJSpg7cWMz6WUoCeKcORKMugKBJG7M4aP3mFbms0Pk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=+n2gwwI5ICbPV5XOVnFHvtm0RnUfCoQpce3aU1BVfTM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=l6x+Vcnh/+S3Vj4ThVXUyDMqIQULTv6ZyDyNnJyIhsDaEoduDpu8ELyJmEQdQnstdLfepAIGsLl1WF6+X4mKTWVlmYrbJj+r5t4mIYNDZf0VyKjkWy5rfqlnQ/NPYUxnhICt+GxrUo1dEHKzycvjpN2y8j0jHnqjstQgI/ePHLE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ti6jcZMg; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ti6jcZMg" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 18EA5C2BCB2; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=+n2gwwI5ICbPV5XOVnFHvtm0RnUfCoQpce3aU1BVfTM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ti6jcZMg9hkzFNNuRJZ8J6p+Wm6FJte19bySeGHUcqN32ZseL0DVoC3ezybWDPCk3 AKhklBKc76YrcTQyj5xsbxy9PMiBq4WwyfShK8QYKuWBMkg312U3hR14U2pvz8euSX kxUi2xQcQR+Dy6YoKSd714v8Xq+O00ptptd9i8/FWUlbiTQvLxJZzJKhHGYqZhJTDF lwdCTRijWIScDb4CIKRSvi0YAHqFIPxf8+jiBJlVQpE9tx0IPK5vccwym1Kj6upeyd xTpB2Uq7cJEQDp7RHQJfwJdOR6LFBLBTEHXDh80PXT66yBJE97QZUL212kfNIZZY/h uz41RyHJAwWKQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004ct-2YsO; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 04/13] wifi: mwifiex: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:04 +0100 Message-ID: <20260305110713.17725-5-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold Acked-by: Francesco Dolcini --- drivers/net/wireless/marvell/mwifiex/usb.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/net/wireless/marvell/mwifiex/usb.c b/drivers/net/wirel= ess/marvell/mwifiex/usb.c index 947ecb0a7b40..f4b94a1054f6 100644 --- a/drivers/net/wireless/marvell/mwifiex/usb.c +++ b/drivers/net/wireless/marvell/mwifiex/usb.c @@ -520,8 +520,6 @@ static int mwifiex_usb_probe(struct usb_interface *intf, return ret; } =20 - usb_get_dev(udev); - return 0; } =20 @@ -666,8 +664,6 @@ static void mwifiex_usb_disconnect(struct usb_interface= *intf) mwifiex_dbg(adapter, FATAL, "%s: removing card\n", __func__); mwifiex_remove_card(adapter); - - usb_put_dev(interface_to_usbdev(intf)); } =20 static void mwifiex_usb_coredump(struct device *dev) --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 82FF7384231; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=uGlRHEhTqy0GJKbPGVy5rhiIKZ2dfYf7aM7cseFyCMdbEwm+t8ehStPg5lcTc9lX4Lum1kFPFQdMH97cQrGlzyvjvvpGavBo/RDTi68nwxfyfWTPcgpzNJ9MlmH6FjmST3BBrboXCK1MMGwfscFrHkWFwFK7XPyD2rGyw7SLvCs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=42Ws8GlzTjjM4nukmpyywyMHmPwKfyyiFsTL7Pg3heo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cb+DEKsgq15sZyVH4K+48F0th6V2beHogjDjWk6ZnETSDoAQ0HW26KrE4mHy7R3Mt2Tk9tJegao7Ca5vS/2Yu/gkLq8kk+0Bpi3RrsDbLVpX5RJSmQihV2moSGy35sBJVqvxCUEefXmjp+TX2NskOUPanftMM9UsiSqkd0kbUS8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=FOaIFzGQ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="FOaIFzGQ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1EF90C2BCB3; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=42Ws8GlzTjjM4nukmpyywyMHmPwKfyyiFsTL7Pg3heo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FOaIFzGQ7/rMeZLOz2PwYSqi5x+nYQfOEwxzNrhGsSWKoyOUYY9C1E29M8BpDXxWO 9Z6hHVM6hdiBEyoTA1L4iHZkwIhajTVp88cdSQxu2onefS/CwERF2VvWP0JUKaVE4N WURp0cJCbrcvMKkcPz9TAqoLHOI02IDJYhFXuti4F90nM7hI5mexWsQC0ZuVX8SIBY iG0mRUTQxbbEW7xZn5ZNLafBe6VcemAO1oC4elXrhyFzmLNtgf8I+X1VRFNANUGZGi gzYciOQ6OV93o3JbIhXWPSrNKg9hNMM3WjA5jig596rPcsFW8rL37r4ohDGbYVtIO6 1c/FFnx74hSOw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004cv-2bgS; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 05/13] wifi: mt76: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:05 +0100 Message-ID: <20260305110713.17725-6-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/mediatek/mt76/mt7615/usb.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt7615/usb.c b/drivers/net/= wireless/mediatek/mt76/mt7615/usb.c index d91feffadda9..bab7b91f14be 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7615/usb.c +++ b/drivers/net/wireless/mediatek/mt76/mt7615/usb.c @@ -151,7 +151,6 @@ static int mt7663u_probe(struct usb_interface *usb_intf, return -ENOMEM; =20 dev =3D container_of(mdev, struct mt7615_dev, mt76); - udev =3D usb_get_dev(udev); usb_reset_device(udev); =20 usb_set_intfdata(usb_intf, dev); @@ -193,7 +192,6 @@ static int mt7663u_probe(struct usb_interface *usb_intf, error: mt76u_queues_deinit(&dev->mt76); usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 mt76_free_device(&dev->mt76); =20 @@ -211,7 +209,6 @@ static void mt7663u_disconnect(struct usb_interface *us= b_intf) mt7663u_cleanup(dev); =20 usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 mt76_free_device(&dev->mt76); } --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 878EA384248; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=cZcLfqlqBSRBAkq7/VZawgC4FCcgLwy/dgkFeu7TwU15pzWYgl0v2kU0GpozwfZYlOEbPAbaXj5LKy76g8EXT5wlNz1UCRRFPPww2+26hmbSgBGW1vJztdu5vVhsdhOp5Jf3A+2CpHkOJDganNscyUg1IYA+HTxMhRzgRBvLtw8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=0v5Gv1OSiBL9CUheGKWW1u2VaL5UzKQuFEiUKbDcGSo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=T0hq5RLJwN9LFWH0K+4qkfNgd4YoRG3tIPevU4b2tQz3bdbpUFQNIK6O186Nhf7ARqpFOwxaVuuQd9jzDRK5yeOM4Xaw3An3Qg/l19H9XVOr7RHAn2ZNE/njpWt/zl9cwjD31l5G2zJLRAGQK07TRQ+L1acJ/N0XYEyQxxSZ8vU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cyt6zAWE; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="cyt6zAWE" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 20EA1C2BCB0; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=0v5Gv1OSiBL9CUheGKWW1u2VaL5UzKQuFEiUKbDcGSo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cyt6zAWEj4Dm3PbmDphHAqJwpQ4aWYhhKzfb+3g32/GfqwUFnriSBDgFHwP1v6GKW te8tuwG5oXNr14Ql6U+Q3c9G9MfKXuhkVRE3PCUhB1GmronhDzKFvHB2VGWvyR/Amm qwQgYE2u1OjsmTQGj9t0gNBYYOWbjG42nG+L/NGSewxg+mDmoteiKTrsZZOOGvgL9A QG8uyEc0joXnb2pDXg4oM0wt/zxNX0r3lzJIefaTH+ZXq52wn0rKsyrSqaVWDyUxfR hRJdNfBryDwGDapQ9NYrZuP/b//WHc3bihhP70Shl7SJJy3w5DZa1gpEdZ6ui0iAPr KUGtoH2D6H1mg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004cx-2eMR; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 06/13] wifi: mt76x0u: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:06 +0100 Message-ID: <20260305110713.17725-7-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/mediatek/mt76/mt76x0/usb.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c b/drivers/net/= wireless/mediatek/mt76/mt76x0/usb.c index 90e5666c0857..2acce121fb14 100644 --- a/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c +++ b/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c @@ -245,7 +245,6 @@ static int mt76x0u_probe(struct usb_interface *usb_intf, if (id->driver_info) dev->no_2ghz =3D true; =20 - usb_dev =3D usb_get_dev(usb_dev); usb_reset_device(usb_dev); =20 usb_set_intfdata(usb_intf, dev); @@ -284,7 +283,6 @@ static int mt76x0u_probe(struct usb_interface *usb_intf, =20 err: usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); mt76u_queues_deinit(&dev->mt76); mt76_free_device(&dev->mt76); =20 @@ -303,7 +301,6 @@ static void mt76x0_disconnect(struct usb_interface *usb= _intf) mt76x0u_cleanup(dev); =20 usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 mt76_free_device(&dev->mt76); } --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 B5B64385536; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=IcnFcTuB6kzEtarbQgs+cd9OWui0yuXpytCmUlIkemFO1LkcfuqZEfHkPkPjJ8vxQVgNkdTX3LX4uyLrvzc6wVF98cdGk/OwnUR2TxFMzqDamAsEvwsPRnqLjRGEe6HZEsx6jOPE+54LeDEPL/xJyZPgKz2h9pYf6E6C97n9d3A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=xCEaqUoallq2NdTzWqQElwbwYb5T0f2rYJwsXpRUAaA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Pzie1489vKaXU24VwkLS8rXLfjzx+10sCZOEYfNRZaSOU9Xjtd2ifEZLpVAKawAhhCXPoK3u1s1ykCRIQayd8PE8jELn9LihEyhZHC34XWhohVxZRiGBKVvzBnQQOMyj+8HdTlTmAUnQOVSgfPLwi4EEhvTpMmrZPASnPUU7CrI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=F8JYtG/3; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="F8JYtG/3" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 579F5C2BCFC; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=xCEaqUoallq2NdTzWqQElwbwYb5T0f2rYJwsXpRUAaA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=F8JYtG/3YpWHw0jDUl4/6GqoMiuvpz3yVJSaw4Lald1bL1wQ0s2KWUIcSN39tiw2D /RReIH224fkVgrwRmHc0e81/z6+hHcuRV36ieOfdavAcivtN2id2ZjjgXRH+yuVqvy FK/n1kmswq0XBIXAbnRY/WNWNSuUj4f2DRvSf9Gkmq4Li6xOvmyvTqHeoW+moySs+F kxVW31VkKgLoEiJFciRciYFpYXX4YhtSLO/DAII8zS84LIG5u3cqlybu9z5Gplyacx /Ddt44FBGToBahGfvuaRSonFNCmRPiFlJpUjEDLf52plGCzN9ppBoJyBj3yiqlDW5/ 9LSAB6MIdq1oQ== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004cz-2hFL; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 07/13] wifi: mt76x2u: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:07 +0100 Message-ID: <20260305110713.17725-8-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/mediatek/mt76/mt76x2/usb.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt76x2/usb.c b/drivers/net/= wireless/mediatek/mt76/mt76x2/usb.c index 01cb3b2830f3..8af360bca643 100644 --- a/drivers/net/wireless/mediatek/mt76/mt76x2/usb.c +++ b/drivers/net/wireless/mediatek/mt76/mt76x2/usb.c @@ -57,7 +57,6 @@ static int mt76x2u_probe(struct usb_interface *intf, =20 dev =3D container_of(mdev, struct mt76x02_dev, mt76); =20 - udev =3D usb_get_dev(udev); usb_reset_device(udev); =20 usb_set_intfdata(intf, dev); @@ -84,14 +83,12 @@ static int mt76x2u_probe(struct usb_interface *intf, mt76u_queues_deinit(&dev->mt76); mt76_free_device(&dev->mt76); usb_set_intfdata(intf, NULL); - usb_put_dev(udev); =20 return err; } =20 static void mt76x2u_disconnect(struct usb_interface *intf) { - struct usb_device *udev =3D interface_to_usbdev(intf); struct mt76x02_dev *dev =3D usb_get_intfdata(intf); struct ieee80211_hw *hw =3D mt76_hw(dev); =20 @@ -100,7 +97,6 @@ static void mt76x2u_disconnect(struct usb_interface *int= f) mt76x2u_cleanup(dev); mt76_free_device(&dev->mt76); usb_set_intfdata(intf, NULL); - usb_put_dev(udev); } =20 static int __maybe_unused mt76x2u_suspend(struct usb_interface *intf, --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 8AC0838424D; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=BFJcr2RvgkMrovW7JWAvJ2LDd8htCCOdXJclaBDZIfL0zQMBJ2IChb0lLn6Q5gMFEbIM4wz/DKF0sAfs6iwRJBaAjl8PZcirnSGLBPby6C3MRxMeLmurgSW5AESCBay7e5Q2Ogbr9/B2pA+pgZCe7FJZTdqUQ3MSJ2Fm9Ql+pqw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=tGJ7KOHEEm7rLo+cGLabikKcGHzDBaTAEAtltw3d7rk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FXcNxwLrZmIySkepvMdU5mGI37VUnmBR9pB7S5gmmvmMRF+dKJsJaTEnPd1jEehXAhB7ufg66/MyVtikaqp+rV1hsvAeLt0aRzlhAHcXowzfPArocgECLehvDUAEAJlVgCNvo0k3O3SxYNhcRd8SR+oLhDt1Yf3p1oaYTxqQDU0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=qKXYNvzc; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="qKXYNvzc" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2CDAFC2BCB9; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=tGJ7KOHEEm7rLo+cGLabikKcGHzDBaTAEAtltw3d7rk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=qKXYNvzcfmfRBTY7qzjwlk8PhI0217qD9GZFz2A9cRnTyDBeRD+zMs1Mru9w5rT33 IcWjFgCqli6Niy9hYAOEFVD/DCt2j8zdXLTQxKxNaeFVPWR6fedMiYpOqQaeeY0pcd dsPiqPUB+bpNvRHPmB9q+vgcyKpcDsYUKv4cdatNmfFuJaPTA06pwJCz7e0sYNXXTS mF+fiQAl4fbkRnJjFvhtf0Kgi61UFxfNGDIEj1MmIgEJDhhozTEQjGLQXQ/1Rm6grM UWPlKQVkQugKwjoNy9MJ3oqVmaU4DktwWQ9MY2aDQDz7107jd/G34kY/72Zx/seZ56 xwOrjHMzV3Cqg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004d1-2k0j; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 08/13] wifi: mt76: mt792xu: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:08 +0100 Message-ID: <20260305110713.17725-9-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/mediatek/mt76/mt7921/usb.c | 2 -- drivers/net/wireless/mediatek/mt76/mt7925/usb.c | 2 -- drivers/net/wireless/mediatek/mt76/mt792x_usb.c | 1 - 3 files changed, 5 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/usb.c b/drivers/net/= wireless/mediatek/mt76/mt7921/usb.c index 17057e68bf21..9bfc234f306f 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7921/usb.c +++ b/drivers/net/wireless/mediatek/mt76/mt7921/usb.c @@ -197,7 +197,6 @@ static int mt7921u_probe(struct usb_interface *usb_intf, dev->fw_features =3D features; dev->hif_ops =3D &hif_ops; =20 - udev =3D usb_get_dev(udev); usb_reset_device(udev); =20 usb_set_intfdata(usb_intf, dev); @@ -246,7 +245,6 @@ static int mt7921u_probe(struct usb_interface *usb_intf, mt76u_queues_deinit(&dev->mt76); =20 usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 mt76_free_device(&dev->mt76); =20 diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/usb.c b/drivers/net/= wireless/mediatek/mt76/mt7925/usb.c index d9968f03856d..84bcebbf009a 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7925/usb.c +++ b/drivers/net/wireless/mediatek/mt76/mt7925/usb.c @@ -185,7 +185,6 @@ static int mt7925u_probe(struct usb_interface *usb_intf, dev->fw_features =3D features; dev->hif_ops =3D &hif_ops; =20 - udev =3D usb_get_dev(udev); usb_reset_device(udev); =20 usb_set_intfdata(usb_intf, dev); @@ -234,7 +233,6 @@ static int mt7925u_probe(struct usb_interface *usb_intf, mt76u_queues_deinit(&dev->mt76); =20 usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 mt76_free_device(&dev->mt76); =20 diff --git a/drivers/net/wireless/mediatek/mt76/mt792x_usb.c b/drivers/net/= wireless/mediatek/mt76/mt792x_usb.c index 552808458138..f827e8a56a18 100644 --- a/drivers/net/wireless/mediatek/mt76/mt792x_usb.c +++ b/drivers/net/wireless/mediatek/mt76/mt792x_usb.c @@ -306,7 +306,6 @@ void mt792xu_disconnect(struct usb_interface *usb_intf) mt792xu_cleanup(dev); =20 usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 mt76_free_device(&dev->mt76); } --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 A69C63845BD; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=bDnESGJyvLyzojYP2jDSdj0DmfXf+3qAVikZEFFXrO0ZLTj3nA81MuRM9sJiiZTcNBFbZc0JvUusKILI+8hCLZcWkE3ObPdIunv6xICVjIud6GrprTAxcGSjC350849tSYid+nsVNIIPI5Cmt8m4gxzCZKhPrSPRKGlty9uwF6c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=TeJWcibhwqPsG9lU0UCk3JLuhDg4KJLJiyLETuN7pPs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=okzTfkRa8CAiq6u83HR0GDIHn2VgemGgAHj10kCM7t1mzsJaGNc0PabrOPN+petNDATbfIZhWrm3a7LT+a3EzxIV92xSQPFjc9jynCWHPcTG5a7xIATPkSkT/bDcZK+w4OC0iUctwBp0fynBPYrfAKc+rKw44k91BWMgTuyl1B4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=X1ioO3Bm; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="X1ioO3Bm" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3AF76C2BCF5; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=TeJWcibhwqPsG9lU0UCk3JLuhDg4KJLJiyLETuN7pPs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=X1ioO3BmOPmPhVlgkhgzoQVN7eTyL5mPNRi+z+5js5bCedyqA34Cbu6zti/L4H7cD F3fFlhYPNUM+U+rQ076+Qx6OBhwuzXZfiJZ7489gQxhhZwus0M82KEK71/Qzhrsk/C +bIrdG9M47KWblZRGgE2gWngO2tCqkqbnf3HB1c5tyBXM4TastYOFxc5pslcK0Bf6f xAonKFixr680xnia1K298O+Q/WXyb2ww3BdjliRpPrWpc2HuZQFC/FSglI9kXHoTyT jhRqfI02F2CKFOYCP+zTbwx41rguhpXcNijfQ8aVDH8IL7J3tc4RWiaOMqGproLem9 YkZEWNzDjoB+A== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004d3-2msp; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 09/13] wifi: mt7601u: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:09 +0100 Message-ID: <20260305110713.17725-10-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/mediatek/mt7601u/usb.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt7601u/usb.c b/drivers/net/wire= less/mediatek/mt7601u/usb.c index c41ae251cb95..9306870cbc91 100644 --- a/drivers/net/wireless/mediatek/mt7601u/usb.c +++ b/drivers/net/wireless/mediatek/mt7601u/usb.c @@ -274,7 +274,6 @@ static int mt7601u_probe(struct usb_interface *usb_intf, if (!dev) return -ENOMEM; =20 - usb_dev =3D usb_get_dev(usb_dev); usb_reset_device(usb_dev); =20 usb_set_intfdata(usb_intf, dev); @@ -319,7 +318,6 @@ static int mt7601u_probe(struct usb_interface *usb_intf, mt7601u_cleanup(dev); err: usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 destroy_workqueue(dev->stat_wq); ieee80211_free_hw(dev->hw); @@ -334,7 +332,6 @@ static void mt7601u_disconnect(struct usb_interface *us= b_intf) mt7601u_cleanup(dev); =20 usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); =20 destroy_workqueue(dev->stat_wq); ieee80211_free_hw(dev->hw); --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 9AAF03845B3; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=FH1vr+zmYCr34SoDoy+o+sC1nUMiqAZgugZ3JH/O1YqjuGMod44avEUi+zOeC0kfqfF3NeM4W0OQm+Dhd0rPgFOWIUsBWJFiv+2VuPIDk3MEw6MrIG5ZfDodlsP1+lgsTIl9B+trnx4T0YFSakpvLvjXpnMya/yl3lt7szXrb+g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=ey/SDZWYDfwEzvacZ4/iPoJH/it7xuEF479WqUIu2to=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EN5Qa2eRXFB7Ec5jbTWoHGWEAlTy+B67q4gyVpyycBKn8Yn83ygoqOwqO/v5AC+ZzW3HlVJXi7QYQUuhGe5b9/Jq5NMYMWCwznn+ziByhSKLB81KQl48xAEY7nbtKNorBBxVagmUdAkh1jypnQ6XYrGoniFj2cwVP8PD3s1KPbs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=OIfmehlr; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="OIfmehlr" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2D210C2BCC4; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=ey/SDZWYDfwEzvacZ4/iPoJH/it7xuEF479WqUIu2to=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OIfmehlrVWKqFw9Xjo8WCMjE5eu68ea5oECuiklfGAkr3b00E68KEYj23uvil2ksx HOdYYHgiazv8aYPoyByFklhnPqZsnbkNLQ2L3jCxU9aAzbDMD3AaRQPUU9m0jfleHa YbFSW3LGE1DfEcy0AKvkReICymCTYMbHecafpUIlEBGT5pKlRvjxRxIHL54oe5u+W8 EiTogIUtjMlLKCom1ESpp4whYdMS70PKpJlQH5boLDeCjvU3wYuLAE0rSL5ia3IX/G BX5jTmxG44DUpYvakj22qeJKGFhmH+zevUTplD7RBykgV0H8gL3qQ/uwP+Bu/awKkv tmCeYyAFjIv5Q== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004d5-2q0d; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 10/13] wifi: rt2x00: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:10 +0100 Message-ID: <20260305110713.17725-11-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold Acked-by: Stanislaw Gruszka --- drivers/net/wireless/ralink/rt2x00/rt2x00usb.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c b/drivers/net/w= ireless/ralink/rt2x00/rt2x00usb.c index 54599cad78f9..83d00b6baf64 100644 --- a/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c @@ -802,14 +802,12 @@ int rt2x00usb_probe(struct usb_interface *usb_intf, struct rt2x00_dev *rt2x00dev; int retval; =20 - usb_dev =3D usb_get_dev(usb_dev); usb_reset_device(usb_dev); =20 hw =3D ieee80211_alloc_hw(sizeof(struct rt2x00_dev), ops->hw); if (!hw) { rt2x00_probe_err("Failed to allocate hardware\n"); - retval =3D -ENOMEM; - goto exit_put_device; + return -ENOMEM; } =20 usb_set_intfdata(usb_intf, hw); @@ -851,10 +849,6 @@ int rt2x00usb_probe(struct usb_interface *usb_intf, =20 exit_free_device: ieee80211_free_hw(hw); - -exit_put_device: - usb_put_dev(usb_dev); - usb_set_intfdata(usb_intf, NULL); =20 return retval; @@ -873,11 +867,7 @@ void rt2x00usb_disconnect(struct usb_interface *usb_in= tf) rt2x00usb_free_reg(rt2x00dev); ieee80211_free_hw(hw); =20 - /* - * Free the USB device data. - */ usb_set_intfdata(usb_intf, NULL); - usb_put_dev(interface_to_usbdev(usb_intf)); } EXPORT_SYMBOL_GPL(rt2x00usb_disconnect); =20 --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 CD2D0386444; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=MoIigFWOFQcGi/8+n/2TZ6xTuqzqgRhePRC21Y1FFMoHRrjVGM4tI3vLg4mmrWTw7SNfk8Q3k+FBXbZYe82x5CPVpwg1iM2Q/egbay7miO5dVWMaghmhHso7q5WNgK2+eGKjMAwTfihGYFVfuERDHDmBjnSTDyMi2Vbv0+6Mrmg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=WlcQfuVYUTxHWCyVOtszC/tk9vnPA9GDI5j4ICmNw7g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PZWtQtGes1YWTUUItyyJcKaIL+et4tD1n1H3eg8d2+F2PTbo4A08+x6levqbZ57odTGYc1kPPvY3Km3/LBF1tjlbeb3roG9eHUWCklm2Y1f63GvsS7aVdLD/s8/LU2dohUJORtzFoOYRZtioA6QnDWY53tx8c6jcsNJp6weqUWw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DZLrVprl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DZLrVprl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6226EC2BD00; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=WlcQfuVYUTxHWCyVOtszC/tk9vnPA9GDI5j4ICmNw7g=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DZLrVprl0ZN0JnsloLZPlxLlJByyPEynB4ZJHwB3519k2ekK6HmIDvEb10lXslPhP 0Rt2sza2Wm0/a0PI6spla5sM5WyykDzFhTcDM2GXpybPVmFHgQFKBq78VSvETlMpaf dQeX8DTgkZFLpWU9nrp4+qzPBFbRXQWQoH4rHHd7qY7StQN7FTaYEJlx+pTbY6jPu6 mNmdtJuux72xgcaR5+78aJnjbY0zGgBi2txeauv3EWxWEENgl7V/bXBtv5zP4Rezjf Z/784iQym3iWJhCvP/31038X+A0nz6/A6r6oUkIF66kLI7UINcgEe4JP5gm9Szfh8G KwLxzQZcQAkCw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004d7-2skY; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 11/13] wifi: rtl818x: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:11 +0100 Message-ID: <20260305110713.17725-12-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/realtek/rtl818x/rtl8187/dev.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/net/wireless/realtek/rtl818x/rtl8187/dev.c b/drivers/n= et/wireless/realtek/rtl818x/rtl8187/dev.c index f7e0f6573180..1d21c468a236 100644 --- a/drivers/net/wireless/realtek/rtl818x/rtl8187/dev.c +++ b/drivers/net/wireless/realtek/rtl818x/rtl8187/dev.c @@ -1475,8 +1475,6 @@ static int rtl8187_probe(struct usb_interface *intf, usb_set_intfdata(intf, dev); priv->udev =3D udev; =20 - usb_get_dev(udev); - skb_queue_head_init(&priv->rx_queue); =20 BUILD_BUG_ON(sizeof(priv->channels) !=3D sizeof(rtl818x_channels)); @@ -1663,7 +1661,6 @@ static int rtl8187_probe(struct usb_interface *intf, err_free_dmabuf: kfree(priv->io_dmabuf); usb_set_intfdata(intf, NULL); - usb_put_dev(udev); err_free_dev: ieee80211_free_hw(dev); return err; @@ -1685,7 +1682,6 @@ static void rtl8187_disconnect(struct usb_interface *= intf) =20 priv =3D dev->priv; usb_reset_device(priv->udev); - usb_put_dev(interface_to_usbdev(intf)); kfree(priv->io_dmabuf); ieee80211_free_hw(dev); } --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 B5AA7385527; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=TnX0KL02rchtz42yv0IZHAX+Qe665lLFkzRHtK5QTRWXg9RtJGl8+TNxWQ+ijr4YwjbUQtFNYhue7/DD6JVkKTmm1nrxX/eJjB82d0ct2gOiKTU7ygOBeLuPKrciLMGscSP/Nc/Ad6lmeNVrL1jjprrRVp0yByK9/rRSuryuVJE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=NAiZqhx2oUYerFceltwHy39/hwOjKejdOi1pvDPT46M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=A4JcaQUXaOgENhj0EWwok/G4Xm3tOyPwdDlRDiWd1pHYP8zB3IdylzJVZJPwcJFU1Octt7V3+8obCaoDuc1Rg3GP2GFk8OWPqaKq0OTGh7wG06ek7OI6zqPmFTwVd43SwQEVOpdst98Ls0ghs9sKg6KajT74GBTPRqbwSNp1gX0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pe/q2087; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="pe/q2087" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 467A9C2BCB6; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=NAiZqhx2oUYerFceltwHy39/hwOjKejdOi1pvDPT46M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pe/q2087e5B7rU0QRAwbxDK+3zIqnfJantwLZ2QUfgwXj4nkTZpBxGrtiqiG4W91L /a4BcxyWZPFnjAiAOHTj9Z+VEfaik1Kiq1n+gIl8XxlOQSUivLSyt0khqgZ7mOhV+D d97OLNh2NjXiGa8egXb348wx7O5TIy9s7iDFP0XrT6TFHc0V47CQ09s9m5dE2Tlq36 Uq+bx8tA2QGckQTiv8V5Y1WWUbKHjt6l7+dHBE/eRPXZDIXZ8j0y/8q2Mwoun251ww VVYgCbIjc4ud6XYlAq47Djz46prAL04Ghq2WyH+zqhxZhlMh6N+CGT+In9SgGp+0gy oll9eYxhDAnNg== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004d9-2vkv; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 12/13] wifi: rtl8xxxu: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:12 +0100 Message-ID: <20260305110713.17725-13-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/realtek/rtl8xxxu/core.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/realtek/rtl8xxxu/core.c b/drivers/net/wir= eless/realtek/rtl8xxxu/core.c index 794187d28caa..f131ca09ae43 100644 --- a/drivers/net/wireless/realtek/rtl8xxxu/core.c +++ b/drivers/net/wireless/realtek/rtl8xxxu/core.c @@ -7698,7 +7698,7 @@ static int rtl8xxxu_probe(struct usb_interface *inter= face, int ret; int untested =3D 1; =20 - udev =3D usb_get_dev(interface_to_usbdev(interface)); + udev =3D interface_to_usbdev(interface); =20 switch (id->idVendor) { case USB_VENDOR_ID_REALTEK: @@ -7756,10 +7756,8 @@ static int rtl8xxxu_probe(struct usb_interface *inte= rface, } =20 hw =3D ieee80211_alloc_hw(sizeof(struct rtl8xxxu_priv), &rtl8xxxu_ops); - if (!hw) { - ret =3D -ENOMEM; - goto err_put_dev; - } + if (!hw) + return -ENOMEM; =20 priv =3D hw->priv; priv->hw =3D hw; @@ -7901,8 +7899,6 @@ static int rtl8xxxu_probe(struct usb_interface *inter= face, mutex_destroy(&priv->h2c_mutex); =20 ieee80211_free_hw(hw); -err_put_dev: - usb_put_dev(udev); =20 return ret; } @@ -7935,7 +7931,6 @@ static void rtl8xxxu_disconnect(struct usb_interface = *interface) "Device still attached, trying to reset\n"); usb_reset_device(priv->udev); } - usb_put_dev(priv->udev); ieee80211_free_hw(hw); } =20 --=20 2.52.0 From nobody Thu Apr 9 21:49:52 2026 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 AF9613845BF; Thu, 5 Mar 2026 11:07:37 +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=1772708857; cv=none; b=cZZ+dHciZL8iwXpLp7x6WgXk2UumqrlnQRoRD9qe3hIgNok/rnd3IXUM7W9PI53hGdT/S6Govw8tRsnaxbys5D/nC5RJPtUfA8kidOt7H9SWaaiwgfQobX3a0xJTGLmMMthBmGUU9eibd3E+nRm590+e89+EjtWtw2ZeGr/3sW4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772708857; c=relaxed/simple; bh=nQgAI+YcSF8G0lQDc1zi/FNWJaXGqRruXZeJTmy1ph0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=a1gZHK3yyiWwIlhP05cpfKUmceevf9HgWmDYAtWltYRjodNFg5t9pKpzo0bx7LYI8hW4+DMQ+h4gSIfEfIGUE+7h4p6Vo6H+rUNx4Xy7cSO5KEuBK2g0cLzwOXvkhHpmwJsHHze8TIkWC/YtkMdgFhxLTBBdbGbINrFaOepWnHA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=fHnc/Fam; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="fHnc/Fam" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 53C10C2BCB8; Thu, 5 Mar 2026 11:07:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772708857; bh=nQgAI+YcSF8G0lQDc1zi/FNWJaXGqRruXZeJTmy1ph0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fHnc/FamkijRkDGZPVujIRbiwELwJS++pH3OLi4vA6Xlioaqh8tH5H57qH/mBzKTs vONiDJqlpOquNKhLjgkXxnxyBiBo2LbPSpOCmcoMak4XVTTdyju8c40wCm8/I48k03 gncKKlPYDMjDtoED0aHKJg8WNjF86YF/jgEacA1RkqNoImeLvx5b/sLeacuBhcw/bJ +E7205ElOVVHhbBMTedyNuwbAVbRUAyt2SfbtbQ/aL97ows1mM+0hD1RThRYBZS0mU 7XyLnKFbp16uKbXcJ1vGVf6TWndud9ZovunDY3dvdpTCTC+1FDagVj28273ZaxTvXg R9jAarPiqNUGw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy6YI-000000004dB-2yiG; Thu, 05 Mar 2026 12:07:34 +0100 From: Johan Hovold To: linux-wireless@vger.kernel.org Cc: Brian Norris , Francesco Dolcini , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Shayne Chen , Sean Wang , Jakub Kicinski , Stanislaw Gruszka , Hin-Tak Leung , Jes Sorensen , Ping-Ke Shih , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH 13/13] wifi: rtlwifi: usb: drop redundant device reference Date: Thu, 5 Mar 2026 12:07:13 +0100 Message-ID: <20260305110713.17725-14-johan@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260305110713.17725-1-johan@kernel.org> References: <20260305110713.17725-1-johan@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Driver core holds a reference to the USB interface and its parent USB device while the interface is bound to a driver and there is no need to take additional references unless the structures are needed after disconnect. Drop the redundant device reference to reduce cargo culting, make it easier to spot drivers where an extra reference is needed, and reduce the risk of memory leaks when drivers fail to release it. Signed-off-by: Johan Hovold --- drivers/net/wireless/realtek/rtlwifi/usb.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/net/wireless/realtek/rtlwifi/usb.c b/drivers/net/wirel= ess/realtek/rtlwifi/usb.c index d35ed56d6db9..9a64df9eed39 100644 --- a/drivers/net/wireless/realtek/rtlwifi/usb.c +++ b/drivers/net/wireless/realtek/rtlwifi/usb.c @@ -986,7 +986,6 @@ int rtl_usb_probe(struct usb_interface *intf, init_completion(&rtlpriv->firmware_loading_complete); SET_IEEE80211_DEV(hw, &intf->dev); udev =3D interface_to_usbdev(intf); - usb_get_dev(udev); usb_priv =3D rtl_usbpriv(hw); memset(usb_priv, 0, sizeof(*usb_priv)); usb_priv->dev.intf =3D intf; @@ -1038,7 +1037,6 @@ int rtl_usb_probe(struct usb_interface *intf, rtl_deinit_core(hw); error_out2: _rtl_usb_io_handler_release(hw); - usb_put_dev(udev); kfree(rtlpriv->usb_data); ieee80211_free_hw(hw); return -ENODEV; @@ -1050,7 +1048,6 @@ void rtl_usb_disconnect(struct usb_interface *intf) struct ieee80211_hw *hw =3D usb_get_intfdata(intf); struct rtl_priv *rtlpriv =3D rtl_priv(hw); struct rtl_mac *rtlmac =3D rtl_mac(rtl_priv(hw)); - struct rtl_usb *rtlusb =3D rtl_usbdev(rtl_usbpriv(hw)); =20 if (unlikely(!rtlpriv)) return; @@ -1072,7 +1069,6 @@ void rtl_usb_disconnect(struct usb_interface *intf) kfree(rtlpriv->usb_data); rtlpriv->cfg->ops->deinit_sw_vars(hw); _rtl_usb_io_handler_release(hw); - usb_put_dev(rtlusb->udev); usb_set_intfdata(intf, NULL); ieee80211_free_hw(hw); } --=20 2.52.0