From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yx1-f53.google.com (mail-yx1-f53.google.com [74.125.224.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0AF7F37FF72 for ; Fri, 27 Feb 2026 21:56:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.224.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772229409; cv=none; b=NFPphb2A79n2DIPekgexkCLsI+GQAHWhwAWgGxWAkiYj8yzimV6iPKksJU8A2dbGYsspxbi0aWSlwHQg5eg+WZupUO28YsbcTOhLUgZvl8lun9kUr4wzEkkDLNZSVtDX6eqCXKI+CrYdv37QNlPKvLNsBT6uPBfAZ1yGO9lm4gA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772229409; c=relaxed/simple; bh=GQDN1R2s9mM921F8hqC+JQetSAhVPiZawRGbiievuNw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=d2w9daDDWnstHetadwYoB2yUXQ9qFyqIH7RN6wUSf2DeGx3ukwO5vLesilqfOBWCq4Nw7ZBPrCk1xIhmpIPnHXn+1df+wXgkMrGc+pljduiLzG4CzYAtDFZvzvN5ht3r59jF54Da6GU7YnOWGdMLdwqtbaLYxn/b7uYpgdXFrxM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=a8kxxp+3; arc=none smtp.client-ip=74.125.224.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="a8kxxp+3" Received: by mail-yx1-f53.google.com with SMTP id 956f58d0204a3-64c9ebd1369so2319230d50.1 for ; Fri, 27 Feb 2026 13:56:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772229407; x=1772834207; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=b/E4mXwswRGJTxuG0f6Dlg/ntBjWKWPl5F6qxEETdII=; b=a8kxxp+3mQs36q2WcTPuyJZvM5LR83EWWI77/h6QUcf4L/vOlG2edVn9tcPigWqp/y JoK3WNZPifxgqzeizEA83VD4V5HW72zjtCMBK3FYiBE1JVfKMGxHREBTGbEnp8p7TGCP ufh2HhZQ9q7X8y/pOuND+n1G1hiLs6EvXLABNSdLZ8firoagLpaXows2nq21n60Q/dGz WyWIS9WnCVUlRp+TkmnhyXrvuK/falfnGkWyzdsXHf0S9B1+6PFDbigROcagHF9rLv2d QP4bm7i1fx1tfXmAgisAyvEashz+VSFAvjLKnWoYrm4KJ9qmJJWF4kBbVOA3DduuuHxA CT7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772229407; x=1772834207; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=b/E4mXwswRGJTxuG0f6Dlg/ntBjWKWPl5F6qxEETdII=; b=BtyBy9YdNl6wmfjELdW0eYpImnLF3DQrF5pfLVDIpe9sMQpVZAKdQcOEDQ/OehVARN btOJ3TOjx8iVMaEoH0FOA8fg564/N5B6+yWbBC9/xiXE3UBnSVuPb9vWFf9jjAVNR/14 XJVHAIu5vhLLMNKcP9C/v8T6PkllCQNK22sLv9AmcwjOd9lx0eoz+D11NncVx+83a6SB Q/D53KbsnMRpOXJDmiKlN/JqS4ZNSpaVGXElkbX7F59jGPCKMNtHpyv+hIxgOc+leudV m/AdBKGMGVNZBDRDuKrwMu7DVzpPG9+2giV7QxHbUpiED+QhJVMgL7ReCngNyu8RnzvX zveQ== X-Forwarded-Encrypted: i=1; AJvYcCU0FGKw/9RGos5/AaEwDgn3jMJuBdtPUciE5eNfM9oFhHiG1kYttRSD1M2PbBRtjrEfqhZ/rDkk7E2uq0Q=@vger.kernel.org X-Gm-Message-State: AOJu0YznuWiTEx89zrWSiMhYrf4Y7LUzzb6S3EaljOzzSFedXlGCru2x hXzaJFo2+91rdOfLh/LiQyrd8FH3qgwtuCf8BiFb4YUM0nTkFSzZJlHu X-Gm-Gg: ATEYQzy+EZ0gC2zw+z2KQi6cN48tWScZi3hTfeNgy3qWz0bpxqRYIWdMaWou3QBNF+h EIoyroDR74n55HfIGIa6Prm0MzvKRYmegsLkFTWqtMq7BFUgkgIezB/Vqfzu77udviK/VbE/lzH ePNzWH3PywCO1qBk6NyWrOyk59RO8nWXHY+5UhoWSXCFz90Tt3WtqbSsCvNLV2sRJqqkMMDNnSI zaN4OSuvLOoXP59mfnsP/pBjN2NXt2TWPmi6C5elwM6ybtECuToXwsv7iIHwWhghBgNZ4PfMCo9 LwZCXayFsLgqU3DhjkqN/SNHuvnb/w6/75q/g332mYsmxO+/m3kXjXijjux98HUEqPghE+X2peZ phpGqKHR8PzOpwGdV1qO8V7N1yjecjE8pl7gBrmh5cEPmtCXq51LH385fIF6BZy7JjP8rTwkycc n9pQd4Fo2xEB6S/XAUkHqYHDgPIK0U/9oiNgi0gSx+jHZmv34ZXrhI8iezRuOkUPzPNP8zdyugI IG8xLKDSlNhFOI+Qr75qY0q X-Received: by 2002:a53:e02f:0:b0:64a:d74f:2580 with SMTP id 956f58d0204a3-64cc2082d28mr2750707d50.1.1772229407133; Fri, 27 Feb 2026 13:56:47 -0800 (PST) Received: from tux ([2601:7c0:c37c:4c00::5c0b]) by smtp.gmail.com with ESMTPSA id 956f58d0204a3-64cb75a1157sm2948509d50.6.2026.02.27.13.56.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Feb 2026 13:56:46 -0800 (PST) From: Ethan Tidmore To: Linus Walleij Cc: Joshua Henderson , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Ethan Tidmore Subject: [PATCH v2 1/2] pinctrl: pinctrl-pic32: Fix resource leak Date: Fri, 27 Feb 2026 15:56:23 -0600 Message-ID: <20260227215624.1094832-2-ethantidmore06@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260227215624.1094832-1-ethantidmore06@gmail.com> References: <20260227215624.1094832-1-ethantidmore06@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Fix three possible resource leaks by using the devres version of clk_prepare_enable(). Also, update error message accordingly. Detected by Smatch: drivers/pinctrl/pinctrl-pic32.c:2211 pic32_pinctrl_probe() warn: 'pctl->clk' from clk_prepare_enable() not released on lines: 2208. drivers/pinctrl/pinctrl-pic32.c:2274 pic32_gpio_probe() warn: 'bank->clk' from clk_prepare_enable() not released on lines: 2264,2272. Fixes: 2ba384e6c3810 ("pinctrl: pinctrl-pic32: Add PIC32 pin control driver") Signed-off-by: Ethan Tidmore --- v2: - Use devres instead of manual cleanup. drivers/pinctrl/pinctrl-pic32.c | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/drivers/pinctrl/pinctrl-pic32.c b/drivers/pinctrl/pinctrl-pic32.c index eb438c9d9667..d185fe48dc0d 100644 --- a/drivers/pinctrl/pinctrl-pic32.c +++ b/drivers/pinctrl/pinctrl-pic32.c @@ -2174,16 +2174,10 @@ static int pic32_pinctrl_probe(struct platform_device *pdev) if (IS_ERR(pctl->reg_base)) return PTR_ERR(pctl->reg_base); - pctl->clk = devm_clk_get(&pdev->dev, NULL); + pctl->clk = devm_clk_get_enabled(&pdev->dev, NULL); if (IS_ERR(pctl->clk)) { ret = PTR_ERR(pctl->clk); - dev_err(&pdev->dev, "clk get failed\n"); - return ret; - } - - ret = clk_prepare_enable(pctl->clk); - if (ret) { - dev_err(&pdev->dev, "clk enable failed\n"); + dev_err(&pdev->dev, "Failed to get and enable clock\n"); return ret; } @@ -2239,16 +2233,10 @@ static int pic32_gpio_probe(struct platform_device *pdev) if (irq < 0) return irq; - bank->clk = devm_clk_get(&pdev->dev, NULL); + bank->clk = devm_clk_get_enabled(&pdev->dev, NULL); if (IS_ERR(bank->clk)) { ret = PTR_ERR(bank->clk); - dev_err(&pdev->dev, "clk get failed\n"); - return ret; - } - - ret = clk_prepare_enable(bank->clk); - if (ret) { - dev_err(&pdev->dev, "clk enable failed\n"); + dev_err(&pdev->dev, "Failed to get and enable clock\n"); return ret; } -- 2.53.0