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 58FAF35F601; Thu, 5 Mar 2026 12:49:54 +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=1772714994; cv=none; b=O0bXFSHQ03m8WVSGcCbDk8c9bW89u2sKRtTA6I1VzBaFiWSTMxkteXUt6hJKyWPypOS053AU/drYKTYy+v1hzn5pbBUFRUEppHsTS9/srOIVWixqfeT5hkSlsyUl0568BJb1hlSl/uvF0xTm5oPhNG7VUqLU5ZanMhsKkaicqdQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772714994; c=relaxed/simple; bh=GRplRnjGLxrUWNDzEKltsK68sTgM/gx+kRwmcUGj1Jg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Ltu3M46N8Pi5FP2ag477c1UwVi5fgKLkGa8ZerQZUuzI+/t5ZtXcNwNcf7OM9+CQU0h8gI+p6mQBLNZEdxfEFEEbv9t5sDBpXvN7rJyBUo7j16LyK5UqbzvfszFhBn54pB5B93eWHi4Q/H1665TtUcSCLGaEdDujp6rdoeAqX9M= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EbmOC6dP; 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="EbmOC6dP" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D8058C19423; Thu, 5 Mar 2026 12:49:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772714993; bh=GRplRnjGLxrUWNDzEKltsK68sTgM/gx+kRwmcUGj1Jg=; h=From:To:Cc:Subject:Date:From; b=EbmOC6dPVZq40MZt6N7YMik71gKO3KM6r4ijuf9CW9wuGA3o7OXt3ayBLs2b9sCLf w7/mX1l6feDfE9eXE3kwA2qe+pvye4fWnx113Dd4fZaleniCrId7qy3aiOQ178gq65 gl/dhr5B8vm676A2DMNSXgL8e6BjcJKSe6NzyJAb2QOAa+zvW+Fdoz2JlT/lUee+ah dTDZztE02tw+P/uVbk9GHQ9Yq5dIiZ+/ibFaMw6UQts4Ke6ivJWRyGbBVmpvTd0oK9 V74zIRr16xa4/G3+/CowqKhhd2RChfRw6F91Ry9Zc43BDaTfLMGBqafqIFAFA1LuGv rv6Q1/F/kk5kw== Received: from johan by xi.lan with local (Exim 4.98.2) (envelope-from ) id 1vy89H-000000002o5-2I8j; Thu, 05 Mar 2026 13:49:51 +0100 From: Johan Hovold To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH] gpio: mpsse: drop redundant device reference Date: Thu, 5 Mar 2026 13:49:45 +0100 Message-ID: <20260305124945.10781-1-johan@kernel.org> X-Mailer: git-send-email 2.52.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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/gpio/gpio-mpsse.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/drivers/gpio/gpio-mpsse.c b/drivers/gpio/gpio-mpsse.c index 12191aeb6566..a859deab2bca 100644 --- a/drivers/gpio/gpio-mpsse.c +++ b/drivers/gpio/gpio-mpsse.c @@ -548,13 +548,6 @@ static void gpio_mpsse_ida_remove(void *data) ida_free(&gpio_mpsse_ida, priv->id); } -static void gpio_mpsse_usb_put_dev(void *data) -{ - struct mpsse_priv *priv = data; - - usb_put_dev(priv->udev); -} - static int mpsse_init_valid_mask(struct gpio_chip *chip, unsigned long *valid_mask, unsigned int ngpios) @@ -598,11 +591,7 @@ static int gpio_mpsse_probe(struct usb_interface *interface, INIT_LIST_HEAD(&priv->workers); - priv->udev = usb_get_dev(interface_to_usbdev(interface)); - err = devm_add_action_or_reset(dev, gpio_mpsse_usb_put_dev, priv); - if (err) - return err; - + priv->udev = interface_to_usbdev(interface); priv->intf = interface; priv->intf_id = interface->cur_altsetting->desc.bInterfaceNumber; -- 2.52.0