From mboxrd@z Thu Jan 1 00:00:00 1970 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 299662D94BF for ; Mon, 16 Feb 2026 08:14:17 +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=1771229660; cv=none; b=NqmWW1CVAsZJ7YjHv/LmhgZRKArpx6aiOBht3durrT9coXlEEbWVuBGLdR9ceK79RKk4XDH4/l9FMVpFkPP3EyqHpPljO6jpQFl6AlTUUTQRxgGK3+F8QMUGainVo/aCFGSHa7qrB+BosJFeyilWdNZu9KgSdDduf4kB3XGl8lc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771229660; c=relaxed/simple; bh=qS1T5b3Cz3DbktLCixMx85oyT4SIGZmhPLeucYkL4T0=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=Yge9sw/4+H31hIDSMwtIuKAGSPdn6pKLs+RsSCDa79cQaMm3y1s66+x9eIpY/rjLE7WZjY+m3RFEUrFfDBYyEc/FoVGlISOz7LOKp7vqCXL7GLcQ9l7RECaghosfHDbZ4qxEgdw2C7Y4DRQoO2EhP+07wDKDj3as6iYBSx4Z49s= 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=dnTJFBjV; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=IzJ5Den+; 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="dnTJFBjV"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="IzJ5Den+" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61G2Fodv2170175 for ; Mon, 16 Feb 2026 08:14:17 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= 4PZ7QzpHFD4tsxeAGD3MG3atS5r0xeaLvwHvCFQ9qnI=; b=dnTJFBjVnU2UDeNc 3826OEhvMqBhHbIarsyj4LRhrB/Ed2avuVjGqaq70WAtGC1jY9cDf4GHFNknPGRD bjGnp8ASytY3D41kgQ38J/DrPvE0NLitKcEkt32RNZHyO6wZ2Ip6+aWB4Ir3Vawk mgtmaI2JAX1X7xvv7WUW0VbX+kv+V9CTsj7EATdeCFdhmixIfwEW8PIn8lQ5q7fj ah5vC2GBwU/NFo8ZDfvELIeqIDLa3yjuA+TH4Y4ARmvE4ssuSS+Pl3vSSx/pXC/R I+Etfm4fmN5hD1+Q3zedg0g7JYiEV7lz9o4Q+5VCKDt1fg2DsR6Ki6+VxHHVVbPD rp5VkQ== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cbnv9gxm6-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 16 Feb 2026 08:14:16 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-8cb52a9c0eeso2018284485a.2 for ; Mon, 16 Feb 2026 00:14:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1771229656; x=1771834456; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:cc:to:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=4PZ7QzpHFD4tsxeAGD3MG3atS5r0xeaLvwHvCFQ9qnI=; b=IzJ5Den+0hFMezWDmYv+CenpwFuEWm5A0FPA+pefLmq3dSpb0DyeoEtAKMPILHuvfC okFsFO0q7xIK5VX95hpijh6uNDuCSAlm6IeTu6Uim/5sOC/3BFiVTlAu7XFMr6ARZQoh 3VZ2aqGMyQTZtrstKwwwX1uhD9X0XS55apu3U7KUO6BBz20biT4Se0m2JFDDtiwo403j EzRT5Qthd1Liemg33OEqq0hNA/tNcFR7ZaTpOjPyEJxb9sFEW45Rcd8pgCb3pldTwRbe viQ3SqUswTbbBhU2tienGAJurAesd7MP2WCw98pUSdxrV7UVMvmIkoCF6rL5PIN55oar NEeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771229656; x=1771834456; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:cc:to:subject:user-agent:mime-version:date :message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=4PZ7QzpHFD4tsxeAGD3MG3atS5r0xeaLvwHvCFQ9qnI=; b=PgX4tcWzj7TZEJWDxAMTd3VNbyaAT0WjAImpGwQgVBjJKr0MhweLmjpwFp4oCL9eib UJJBSvuF8h1nG4Ypyfz/vMNGRvtwTDNha/nMFCldPGwNelitdrQIubb50rVn0Oq0tLnj JI7eFKISV1txZ57B9es6NgHpeq2t043VvI2PzIux6ac45Gq6ZNKaj26yK9ccFZlLO/i/ 665kmgYWoB7Hl4Oku16QcPmY37UsBHXC0x4TGbaGtaOtduKL7VTrP8DYGb73mlT7KqWq e3QNXbd2yOq0DSjS+v2cLPzTobRB4Yyj+ri9AmLC+hLkZAfHUf+d6FYaVKgRIiR6HmlU Ea4w== X-Forwarded-Encrypted: i=1; AJvYcCWhrl4rZXkIhPRycehrvCrur16c4qFpQ0fbkfTtdJ9HdRA6x+DC98VI8ozw9eismhUXhSMqpFdfkb4nreQ=@vger.kernel.org X-Gm-Message-State: AOJu0YyzfG3xydTQfiqQFFpg073iP7CIhUW8zrZuDUwLfUsmdNQ1uraw +/H3gz0bQSe3G0IhL3bllOCt0BXYTq8FJRdsCSXTGTdGtJGSdyx0JU4PpUOzAeMICzVEhPp20Zl 4Wv/Xms8fHCFuy0Eyp58I1t3FLggEcxltCJHDu/+01Hjg2D8f6u4QoMP+rszsZL1+9TY= X-Gm-Gg: AZuq6aJTAl1aPNfqj0WlUooQUYOUL0w8RWHg+MR5ziwsKMZ67d1InKl+6s0EKwgZ98a r0jR4b+FXT6bGtfzL0U5i6wmqu2XO9i/6Fams+lPNsIOjmatCwktk2lzXiFaeYb1cxyO72g4rg4 dPLgpBn0EHtz+YCDOyMBB6j3E5adegXZySnhijqkm9LdLV32F3fMMR1hepN6JU2bU3QgetmeR/t bPlJXkpfM33Q6hQvFjOyb4by+wldJJE3ifHNv/8BOGIJt+mTWaKhRnVXniGnnL0VZsBzHJ9s/+z i7dS1aagV7L3Lh7zOYlav6CMs+Q4x4DjXBMtduwve++osJ1388J21jcEaRjCPPwcYqLsCswQDbh 1u5K8jrPka7VtJlYlkxtNQbBynSDI04luX13Iw0tmzSJ0cvc9/w== X-Received: by 2002:a05:620a:2a0e:b0:8b2:e922:529a with SMTP id af79cd13be357-8cb4bf871d3mr881159185a.19.1771229656377; Mon, 16 Feb 2026 00:14:16 -0800 (PST) X-Received: by 2002:a05:620a:2a0e:b0:8b2:e922:529a with SMTP id af79cd13be357-8cb4bf871d3mr881157285a.19.1771229655973; Mon, 16 Feb 2026 00:14:15 -0800 (PST) Received: from [192.168.1.29] ([178.197.223.140]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43796abc85csm24965597f8f.22.2026.02.16.00.14.14 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 16 Feb 2026 00:14:15 -0800 (PST) Message-ID: Date: Mon, 16 Feb 2026 09:14:13 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/3] firmware: qcom: uefisecapp: Annotate acquiring locks for sparse To: Johan Hovold Cc: Maximilian Luz , Bjorn Andersson , Konrad Dybcio , linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org References: <20260215110548.34152-4-krzysztof.kozlowski@oss.qualcomm.com> <20260215110548.34152-5-krzysztof.kozlowski@oss.qualcomm.com> From: Krzysztof Kozlowski Content-Language: en-US Autocrypt: addr=krzysztof.kozlowski@oss.qualcomm.com; keydata= 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 cwzYbmi/Et7T2+47PN9NZAOyb771QoVr8A== In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Proofpoint-ORIG-GUID: OyiQvMqo8B9KnJx87vIWMVabfRxFw95T X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjE2MDA2OCBTYWx0ZWRfXxtXJouu/oJuE 0SEx+9cZXFJOUqosWFclcEVVHc8OYKFP25C6B9gTvYW75S9uog2BQtKEybVjJyqouxfsY+NdS1f nfBGNrPGPCSxXsylzycW0I4HJdtzHG9uvbh2ZUoVFhAFjVnytDq38bLdrcn9UX9UiX8irLazfTV kdtd5XlQ/UYd3RxZkwCnzUzKBag4Ct+21w2+e6LRrZVuzXPstzU7PnsavmlcscYNkWiJXf20hMw BtG+ffRCJoC+QwOdFNUVmeaEkxUTNuGOlvqCKonDA6I+GLzJGMT4xuR9Q4Gg2BImRDBUlxXnpBl /QQdgTEaJrjDUM3aDp5yRAbuPL5dMRys8bv5fVu0ziZUqFw4VR8cSQISSDqLGE9IehFnhrkIfuV Jf2bvKeVdpf3YQq90REwmeFLkFhZLA6mHrs1KzGuCGOjAtyalyna87mO/8/RXUfsyuagRfbZ37C p8S4bVpnJumxNlsYXRA== X-Authority-Analysis: v=2.4 cv=b7K/I9Gx c=1 sm=1 tr=0 ts=6992d1d9 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=6nO30s3o7FuWeffXwhKHTA==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=VwQbUJbxAAAA:8 a=zitRP-D0AAAA:8 a=EUspDBNiAAAA:8 a=iTd_ExjKW5fnJ_jK19gA:9 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 a=xwnAI6pc5liRhupp6brZ:22 X-Proofpoint-GUID: OyiQvMqo8B9KnJx87vIWMVabfRxFw95T X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-16_03,2026-02-16_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 impostorscore=0 lowpriorityscore=0 adultscore=0 malwarescore=0 phishscore=0 spamscore=0 clxscore=1015 priorityscore=1501 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602160068 On 16/02/2026 09:00, Johan Hovold wrote: > On Sun, Feb 15, 2026 at 12:05:50PM +0100, Krzysztof Kozlowski wrote: >> qcuefi_acquire() and qcuefi_release() end with mutex locked or unlocked >> respectively, so annotate them so the lock usage will be tracked by >> sparse. >> >> Signed-off-by: Krzysztof Kozlowski >> --- >> drivers/firmware/qcom/qcom_qseecom_uefisecapp.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/drivers/firmware/qcom/qcom_qseecom_uefisecapp.c b/drivers/firmware/qcom/qcom_qseecom_uefisecapp.c >> index 21be447374aa..befa68d1dcaf 100644 >> --- a/drivers/firmware/qcom/qcom_qseecom_uefisecapp.c >> +++ b/drivers/firmware/qcom/qcom_qseecom_uefisecapp.c >> @@ -710,6 +710,7 @@ static int qcuefi_set_reference(struct qcuefi_client *qcuefi) >> } >> >> static struct qcuefi_client *qcuefi_acquire(void) >> + __acquires(__qcuefi_lock) >> { >> mutex_lock(&__qcuefi_lock); >> if (!__qcuefi) { >> @@ -720,6 +721,7 @@ static struct qcuefi_client *qcuefi_acquire(void) >> } >> >> static void qcuefi_release(void) >> + __releases(__qcuefi_lock) >> { >> mutex_unlock(&__qcuefi_lock); >> } > > The mutex implementation does not use sparse annotation so this actually > introduces sparse warnings (unless something changed very recently). > > See > > https://lore.kernel.org/all/ZJ11H8btBhvCx9gD@hovoldconsulting.com/ > > for what his looks like for the code in question. > I checked with sparse and there were no warnings. More importantly, mutex uses __acquires, so this apparently changed: https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/linux/mutex.h#n214 Also clang v22 has context tracking, which I should probably mention as well, and it supports mutex: https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/dev-tools/context-analysis.rst (this I could not test, too old LLVM, I need to set up containerized builds) Best regards, Krzysztof