From nobody Thu Apr 9 21:50: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 2A0FC3822AB for ; Fri, 3 Apr 2026 08:45:03 +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=1775205904; cv=none; b=V+XhETpVngSRr4vnPvIxhquQ/6JZCRUQCsUMhHNuKYX49sjfTZflT5nrfnVZYmOvZ3quSzw+WDM6Z5SuxwACz5O0FFzKeB+gifMszgixDRI7Vy8CEk1AGmBc3lErhT4cUxRjOUdibILYwiRQXOTWz6QYLUJZWx603tnxSon+9yU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775205904; c=relaxed/simple; bh=rAql7I62Kfy1zvigb5yyjt0qd4nKMD8zhoLzEurhzAM=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=MhDx4+yj6oWMYXT9TxAbqk+vqSAms5pIweE1qrl3494QYm+yTYZnqecjVtTBuz+JEP74WhHCumRaycRKGiHYfB1q5Gv5u9Erx3Pn8E8YU1gBSvBPOg+vjpKMAxwl+xjs2i5NB9AJZF6+gaOe9yKnJ3yKgRJ8R4yd+OGqhFeixvk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=FiYGbPVj; 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="FiYGbPVj" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 946F5C2BCB1; Fri, 3 Apr 2026 08:45:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775205903; bh=rAql7I62Kfy1zvigb5yyjt0qd4nKMD8zhoLzEurhzAM=; h=From:To:Cc:Subject:Date:From; b=FiYGbPVjDmMfWhgYfqSNOAhYaWjjYflHAFBrYotT5VnD0aXtv84RChYtg04eXQMxo n80MY+JgiTgd+JfHW10qFqayvxiWhldiw02ez/vU1ygRusCHAyK9fjfChij4/Ex9Tt soA6J5lRe3vtZBNPl3smk4F8jYoGOM2/GSajJodneprx2u43N393G5Af3KvO0BtwZh d3ZgeLTH5mg+FZxkZxXvN2zkTvXE/Q9fOTRm32sZUkSfnhrfW8kQQmgTLK3OZ5a1hI jGGqSOOSf5pxlOVNNvpaw2qlaZs4OlepJh7B9fXcP42v3ZB6EQcIdzX7+xap2DQXGa 9D1vsAiObfLeQ== From: Krzysztof Kozlowski To: Greg Kroah-Hartman Cc: linux-kernel@vger.kernel.org, Johan Hovold , Krzysztof Kozlowski Subject: [PATCH] w1: ds2490: drop redundant device reference Date: Fri, 3 Apr 2026 10:44:51 +0200 Message-ID: <20260403084450.6314-2-krzk@kernel.org> X-Mailer: git-send-email 2.51.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1801; i=krzk@kernel.org; h=from:subject; bh=MqZEeVG7aAPZ4Df+NRr8DyjQJT+3g1Gx18T92iyS6Ig=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBpz34C1sMazP6kstyeF+TcsSUIRWisw0CrAOnkp 4ZeM0V7tf2JAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCac9+AgAKCRDBN2bmhouD 15jBD/0eLeHgGhsSGTAeMzNhsrITDYzY/vTC4M0i5Z5vZLy311VRT2mmwt7rJOaDjMdY/KCeDiG 3uadhBwGxQDoOAdXaHzaUAY5akEolxqFbWbmq8vk0MY8T/FdNCij9CAxQ92uU9vNekThe0z5Dyj E3zUyijfyNxmXagaa4H5VxTp72OeDOpmXMoT4UBLTAIZC93Jv2GT2U66G8rCwNAEsQoE3q406Aw otBX9QYSIY5E8dngoDu7rJhrl7K0GN/fN5eEXDjyIzgq/w1RqJqVD+wioc7ORcgHen2A6Mr1cos JrAgvyIzvFilJs/D2TU/4hX35dhPK/ctAasu7Mj9xphDqr5K+l55ZVgUgzjQ1U7kHNkVO3r3xQW UKirwWXiLCMMd0aaw0Z6fpx+B+YZ2Wl676JLIh1NA0uff3RYTsOFxrmJTikqJT5erMLfVchVyBv NcNZTG9itn8WIMNFdcU0Rhjdhrog6rfDEZE4kpI6kzIBVL2BVqPyiCbB0vzEquk2LEFWLkwGZ1X 4ixvS6K3NkoX2UCLtQI+P/e0Wvp1XgcdAWrFdrmdhfBXQ0UIK/mvNKKEkePx5pN4wDjK2zE3oUK QiTIfiZZGn4HUlJAOsxLbBVJ9uGqTVwld4bws768aHyKSdluNLwUD6EIWspzKXZU2VFWD6j7KGi y8y2Aqa+Z72MlhA== X-Developer-Key: i=krzk@kernel.org; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Johan Hovold 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 Link: https://patch.msgid.link/20260305111613.18546-1-johan@kernel.org Signed-off-by: Krzysztof Kozlowski --- Hi Greg, I have only one patch in w1 drivers queue. It was sitting in linux-next for three weeks, but I will drop it now from for-next branch, to avoid duplicated patches warning from Mark. BR, Krzysztof drivers/w1/masters/ds2490.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/w1/masters/ds2490.c b/drivers/w1/masters/ds2490.c index 35e75d07ef5d..aa1f57f74397 100644 --- a/drivers/w1/masters/ds2490.c +++ b/drivers/w1/masters/ds2490.c @@ -1022,11 +1022,8 @@ static int ds_probe(struct usb_interface *intf, if (!dev) return -ENOMEM; =20 - dev->udev =3D usb_get_dev(udev); - if (!dev->udev) { - err =3D -ENOMEM; - goto err_out_free; - } + dev->udev =3D udev; + memset(dev->ep, 0, sizeof(dev->ep)); =20 usb_set_intfdata(intf, dev); @@ -1085,9 +1082,8 @@ static int ds_probe(struct usb_interface *intf, =20 err_out_clear: usb_set_intfdata(intf, NULL); - usb_put_dev(dev->udev); -err_out_free: kfree(dev); + return err; } =20 @@ -1107,7 +1103,6 @@ static void ds_disconnect(struct usb_interface *intf) =20 usb_set_intfdata(intf, NULL); =20 - usb_put_dev(dev->udev); kfree(dev); } =20 --=20 2.51.0