From nobody Mon Feb 9 11:46:58 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 CC0593033CA for ; Sun, 18 Jan 2026 18:10:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768759823; cv=none; b=ECKOD40+sudTTzCMyfT+97VC5sVcEcK4ajGKPzte1M14Y5RoQx5MbSZy4mpawSo/H9XlFw/jplMFfYZTZlElSSZCNOdzPZG5oJ2y4JkWHg+hbdANNarBHtN62RImpEj1OIBBsY5a9E86nsXJizkFP+pp74KdUKHYpNZ2R48zqwQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768759823; c=relaxed/simple; bh=adtV57CgOwnY60Si6YEP4k65ve4WmCO5x4rzf1ZqeaM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Psn0O5hfoDvkvw6voQLzPKnd7UUvKC7Q+/dPsXu2IKBexccdulcnQg1G52ztUb7t2A98zs1P7Ix2OfapywvlR0LWKFgf7An1zJNGIMZmFIqD85XRDNhEoW8NSJ5/YzxWjavUhF3Az7qLjygPTyEv3Ofig9IUQC/Ywt8RnlPsK/Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=FLHmcbh8; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=QZOGH5Z2; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="FLHmcbh8"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="QZOGH5Z2" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60IBUhEI3465832 for ; Sun, 18 Jan 2026 18:10:19 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= VMrQrzLzDincZEvSf3IY0LWe8Yq0vnY3RbOd9IgAleU=; b=FLHmcbh8VeT0Xx7u ocCWXxIuvjB9tBx5LxiCDtIBDccJU379nP+UmbRcoyBcr+3edNEdpueWK9J+M9dg On/6tG/zQrLm8kIshV6N+0lPrvBMlNib7FFNeOZ8S06q3klUrsezMEtoWQSE7x8a iEZVX+2oCVORqUTkeyErZZCtqx37t6TybdAYQxnbiueXwqeFCCkNWbDhB/sk9zJO wyGw/a/G1LG/16y68VMQZIcKCntDh2BsmDjLvW1Mt+2eHXhh9/2Fc79ypv3cnxJq yymNkMmzrvQoaprecP+D3OwcUzhJd+k9MUIKezJvfuCKhbJaAMB2BIcNG0+2rc9i yD93uQ== Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4br1e5jygu-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 18 Jan 2026 18:10:18 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-8c5297cfe68so689276185a.0 for ; Sun, 18 Jan 2026 10:10:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1768759818; x=1769364618; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=VMrQrzLzDincZEvSf3IY0LWe8Yq0vnY3RbOd9IgAleU=; b=QZOGH5Z2uP0IlEOwDzLWQb0+GAkA/MvEwJ10alBhCv9IWIl83kQpZJVlZoITq5/UGD I8alMcOMWB31mRb4C5WT3WEPlFZNmjYmQ6e8mLGYIs0qXgnlTZkCndy60SHLbSXM0hkm bPIAaQv0ZsChjoRL5xn26zh/iGD4OYa1c9N2tZbhRTBZ9rSVBt+6kgMU+zOSEM8zp5yg vuRAOBvkRTTeng8LLkmJY+M0Ad0dxUDBvCylEnB3H+niJLYjP74+TRZM05PntmG5cVKK L1OHuUnH9c9ld9N9I/T1QAcDQMH31pwewoy0ECwaPVz1qmP/PBW+7ywJhJkVKBQKnhpu j4gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768759818; x=1769364618; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=VMrQrzLzDincZEvSf3IY0LWe8Yq0vnY3RbOd9IgAleU=; b=i6FnFoW1W8gd9rg+GyiFDoX1QIWFObUxAqbr9WJ2MT8HDkHXdkAO484dsI4tXvIeqX +iTd20BgS6M3hO8GBAqNIgxnVPZ3yTstS1wDv8ZVImFlYJMWUrgrdKKXHiRmynpFFWan pwBp7vy7R6G5om0zpVW84m96i7N3dDG3QZEugDZI8Ijoy8kcGQ7h1kKIvZaGfcSuk10M 9jWI4SpLYLTrIgThvL3bkrZdFG59j8MEUEDIts50D8yxCoUYjrdYdbBlKBYJ/QjxCdKc INqoVBa4Lxr5ilb+Cjt3LbW/xwpYe9m+7BTaDeJ3cIsviMl5zFduY5hsZK9yjymk2QNy jzFw== X-Forwarded-Encrypted: i=1; AJvYcCVHHggGuZD0VmftnBt2CTEqOswXXB3bIJqGyd078jacfz/mPqreI2EBYm2JQ+xOSNF2lx0EmriC9hteOCE=@vger.kernel.org X-Gm-Message-State: AOJu0YybrH28tKI3majPlQZkIrGngO444D9QRflw1LgkhLAMFvIwsGa5 ch6FVHPIXByaLYrZZU/2wL5H8RGiaB5ypaaNi5hhTD6SfCOaniuzEbYRjzCE6dWx93qTFu/HnE4 YSYoG97eBF9zTKgjKHsHkiv0vUvKHArgbcIgZkfAB7CEFBa0Gvu0cjYeEE3grTPEZINc= X-Gm-Gg: AY/fxX44aEN4nljNlm+8Swga/ioI0i5ritfNy58rpQbqaLiDgM0qblFFypttdkCuUqe TKGa3Iofxm/av2hJs90tzi+U13RAUG8Amiqif07s8JsTV0vgxIQr7HfaKS5ZpIfVQEvcH8ztTCa H0CTtu/pDHfs+Dh2vowZbZJl5OuQYGdgaqCWxG/sYKAsUZZ7ilfxr4d+u8RvdM+zLMxpbNIfiLo yBRAq8xvyklB/IgxM9WsgqNaAnaU+Vy7pLf6Ew5m8YOlc8geBfOeGdBYBwzeGVrnLlYS42GymBF M9i3of10EhXdVtbJ59bSlI4uppHHtDdd93a7Ii7aWrxS8JmYG5iheiE+XMFkZq2039T5Ry2QDhN 6tj4wSwrgTmR6+3a/wgkHXmnnQyDqHKB3og== X-Received: by 2002:a05:620a:4543:b0:8c5:af6:3efa with SMTP id af79cd13be357-8c6a67bcd01mr1262132785a.86.1768759818324; Sun, 18 Jan 2026 10:10:18 -0800 (PST) X-Received: by 2002:a05:620a:4543:b0:8c5:af6:3efa with SMTP id af79cd13be357-8c6a67bcd01mr1262128485a.86.1768759817837; Sun, 18 Jan 2026 10:10:17 -0800 (PST) Received: from [127.0.1.1] ([178.197.218.229]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4801fe44b37sm62162085e9.12.2026.01.18.10.10.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 Jan 2026 10:10:17 -0800 (PST) From: Krzysztof Kozlowski Date: Sun, 18 Jan 2026 19:09:30 +0100 Subject: [PATCH v2 07/11] pinctrl: tb10x: Simplify locking with guard() Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260118-pinctrl-cleanup-guard-v2-7-bd36f681bdc0@oss.qualcomm.com> References: <20260118-pinctrl-cleanup-guard-v2-0-bd36f681bdc0@oss.qualcomm.com> In-Reply-To: <20260118-pinctrl-cleanup-guard-v2-0-bd36f681bdc0@oss.qualcomm.com> To: Andrew Jeffery , Linus Walleij , Joel Stanley , Emil Renner Berthing , Hal Feng , Chen Wang , Inochi Amaoto , Basavaraj Natikar , Shyam Sundar S K , Bartosz Golaszewski , Steen Hegelund , Daniel Machon , UNGLinuxDriver@microchip.com, Thierry Reding , Jonathan Hunter , Heiko Stuebner , Patrice Chotard Cc: linux-aspeed@lists.ozlabs.org, openbmc@lists.ozlabs.org, linux-gpio@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, sophgo@lists.linux.dev, linux-tegra@vger.kernel.org, linux-rockchip@lists.infradead.org, Krzysztof Kozlowski X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2163; i=krzysztof.kozlowski@oss.qualcomm.com; h=from:subject:message-id; bh=adtV57CgOwnY60Si6YEP4k65ve4WmCO5x4rzf1ZqeaM=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBpbSH0P3baB5JzE0xj4EquivvpaBBrqdpm6amOt juDbwiBC2KJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaW0h9AAKCRDBN2bmhouD 18o1EACUQyCgNzHZcDtTGGjP0XngZqctytCl/BhtXdiN2scGWH47PeJ1EbokGmcu35oOMeMoF/P Ai/yJjffW+dvyctYiUkUjdX8qhiC2jEMnBnR8HZEw07kz1ropOT3VtM9UNzcOP4VVa6XiU986gx +A9IxfYMZgbHYem1kw5uWedXNzll31yR6NXl+qm3YmcapiaWrXfhMQr5W3+Y014NvLqFh0h0nY+ VxNPqKS0K7Oc6imDFiXRU50DUa2PRBddUY72TCkg8IbNE9LNnC+IouRZfrpjgzU+o1sRF5zlhhE I42rY1W2TwyfNm25FScOIOwekUr/tt7XHK3Q3KNa7vNG+uurb06yeOS0NW5zEIh+fH0e0tevRbL 5txnHIVmMgsVP9qzzc3Br1lDZbc52FUcLV7vvC9rMpyHoyONur5eBHMB2UKz3Xqa2NBtZPpWsFo wo5+VFlpkkdh5y2iBoS1iDvXQLvtiqBpaHj6Suu/4MiSLX+PkV0aId7KrTqfcC2PmJjOYVi5Q9Z vShD+pW5GDt3E9qbXvJRxs0a8bvIwVXqG8pg4P9bsL9v+rGt5VbCvR6FyNIf67jL9QRcUvEn4Px 54ALdRQJBLaZ4OkpCq7oTGr0tO4yjqNJDKYKdrn03h/zNzPbiXClpfTtiL9qzncdjmoS9IgEOV/ vTudhlAhqE6ovOA== X-Developer-Key: i=krzysztof.kozlowski@oss.qualcomm.com; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE4MDE1OSBTYWx0ZWRfX7no+ZEeaWb9B 3J0fAE1RDc/I9x9ayJe3W1rjKHi0KCxbdzqMU7tbNLH5UMR1c5nzy904/g0ztlCTYRzqlP5nS+9 EwTpEEHXfu116HlM9m4rZZU8u3qAA/cDt4A5hZfsne3pGS6HMvNf/tt5iobHyvxEV6kQBDYodRn euNblBDmMeQcyHTgb9gx9L2aVXinqWLAwlsGRukWrWsm2ZExK010D/5/Z78Qm48Y8asTqDG98vA uJBZGei9mO9+ohlifuJzJVWKs7lbF42FPHEXcqEkzNgxwliMCivciQpX5U2bpmu6jlhvuxYim8H nFsomXkDpJU6xB7vImN7DStHTy7AOAXSbOw58I1JM0EiI0aM8e8gItmZT70gbLRL8sbvEqgWIQ0 V4D+nAxZ2y5pjbGSr4ETBKVc98yKi/sErGoY9cmBcU13QqCQmpRKrdZKZIXU8Bg1gEaVoAYn/bC AlXTmdE/JioXxy4BH0A== X-Proofpoint-GUID: E8isTLgiMAT3oFV-xMD2-rKOF2gZ84uk X-Authority-Analysis: v=2.4 cv=U5yfzOru c=1 sm=1 tr=0 ts=696d220a cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=Eb9f15NH/cHKzfGOmZSO4Q==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=fB2tTgKqvhDdEbG57mcA:9 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-ORIG-GUID: E8isTLgiMAT3oFV-xMD2-rKOF2gZ84uk X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-17_03,2026-01-15_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 lowpriorityscore=0 malwarescore=0 suspectscore=0 priorityscore=1501 spamscore=0 phishscore=0 bulkscore=0 clxscore=1015 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2601180159 Simplify error handling (less code in error case) over locks with guard(). Signed-off-by: Krzysztof Kozlowski --- drivers/pinctrl/pinctrl-tb10x.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/drivers/pinctrl/pinctrl-tb10x.c b/drivers/pinctrl/pinctrl-tb10= x.c index 129fa51d13b1..3f581404a9b9 100644 --- a/drivers/pinctrl/pinctrl-tb10x.c +++ b/drivers/pinctrl/pinctrl-tb10x.c @@ -607,7 +607,7 @@ static int tb10x_gpio_request_enable(struct pinctrl_dev= *pctl, int muxmode =3D -1; int i; =20 - mutex_lock(&state->mutex); + guard(mutex)(&state->mutex); =20 /* * Figure out to which port the requested GPIO belongs and how to @@ -642,7 +642,6 @@ static int tb10x_gpio_request_enable(struct pinctrl_dev= *pctl, * Error: The requested pin is already * used for something else. */ - mutex_unlock(&state->mutex); return -EBUSY; } break; @@ -667,8 +666,6 @@ static int tb10x_gpio_request_enable(struct pinctrl_dev= *pctl, if (muxport >=3D 0) tb10x_pinctrl_set_config(state, muxport, muxmode); =20 - mutex_unlock(&state->mutex); - return 0; } =20 @@ -695,34 +692,28 @@ static int tb10x_pctl_set_mux(struct pinctrl_dev *pct= l, if (grp->port < 0) return 0; =20 - mutex_lock(&state->mutex); + guard(mutex)(&state->mutex); =20 /* * Check if the requested function is compatible with previously * requested functions. */ if (state->ports[grp->port].count - && (state->ports[grp->port].mode !=3D grp->mode)) { - mutex_unlock(&state->mutex); + && (state->ports[grp->port].mode !=3D grp->mode)) return -EBUSY; - } =20 /* * Check if the requested function is compatible with previously * requested GPIOs. */ for (i =3D 0; i < grp->pincnt; i++) - if (test_bit(grp->pins[i], state->gpios)) { - mutex_unlock(&state->mutex); + if (test_bit(grp->pins[i], state->gpios)) return -EBUSY; - } =20 tb10x_pinctrl_set_config(state, grp->port, grp->mode); =20 state->ports[grp->port].count++; =20 - mutex_unlock(&state->mutex); - return 0; } =20 --=20 2.51.0