From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.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 01D9B35A95A for ; Fri, 24 Apr 2026 09:59:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777024762; cv=none; b=DWlVqlEAtuh/HY1icUOyc+3e5ZbmJzX1KDBZ2ElAaQm9bI7r55PFjGZNFCDHiqn21plT+kDdyX/mJNsygatJ1YmZqLQbWisRN8MQS0MmhkZ3pp0jvcW5h3Qt2i7sJPssymSPOejhCPjASsXFwi/UVRf8SNfGgIOejyufhVEkn6Y= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777024762; c=relaxed/simple; bh=1ddE0U7h9weXbIaT7HOzewRICM+9yO0cSWfl91aUt5Y=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=TgyISb1SGv/aro/9SfbSj6Q/1UYUN15wdXymCfjAxtwYHnqrVNibuU5HcXU34ED61M8kV4fw/XWIFF8rD9rx6fSvOKWjNyoau4XVW7B91OTjG0eJsYV2U2iu5OWcs3XatMI0J9CYW8/L/8zL7NBvOW6t0TelXQMU8XpdG44kOBs= 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=FQ2e6FWR; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=CjKWTe4t; arc=none smtp.client-ip=205.220.168.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="FQ2e6FWR"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="CjKWTe4t" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 63O8H7lq2291550 for ; Fri, 24 Apr 2026 09:59:20 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=JIaEBu2fXti OblnnO/rwwIoef8J83XO0Fyvu0X3nK9Q=; b=FQ2e6FWRljlMUNbVPh4e9UcRVw2 nb+bAB7ZnDazynDz1UA9VQLn4jewRB2iDOyqxkpIyJu/k8WKKn36Wtr/VdL1GV/+ ZItwReRkaBA83DiIRFM1SZzHX6lBiL8qV+gNyqxHtfh8IwrXPSDAaKEN4hSlGq8t dzxl2fD4dRli9oTon7uHxVkwHPgWzbgQaS+k1GuQBxUv8vqSmdL74Qup7H3YO6RB npw+A2j9najKyOX6jSjPfwnm110QYUm7MY4p8MJwtR1Mp6s1d8+3Pk36+dmGZDwp mMElfAtvCagGnPmoWw+5BiEESyCg6kyVC1c8NEgNSpZDWTg73jxsdd+tdcg== Received: from mail-pf1-f198.google.com (mail-pf1-f198.google.com [209.85.210.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dqxbp9veb-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 24 Apr 2026 09:59:20 +0000 (GMT) Received: by mail-pf1-f198.google.com with SMTP id d2e1a72fcca58-82fa366fb79so7143631b3a.2 for ; Fri, 24 Apr 2026 02:59:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1777024759; x=1777629559; 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=JIaEBu2fXtiOblnnO/rwwIoef8J83XO0Fyvu0X3nK9Q=; b=CjKWTe4tLg+IGCIEI5oScVx16KoU/LejP18Zya4vTvIDL0Q0SrCfLtvcyhhKRNbSCv W3tf7k6oeQYhBHlqKGY+gCxwqxeBqM3nkwEePPTFQnxIt48PtAnW3WbE/QH/bHLlwVH6 MCV4yfnLbBp/BC2sc4iJ+X8z8IySk7l050IDB1yLi44AFyUvmvLpcTq16Rbdb3B5EpMC Ed/1Wb6dBGb+c76iaVYr5p2YtGI7qqEqduxJdb9Q0H0tz6iJyV4C4DQ2a1twRpHZ8wXs IeAig7o6INL0ZK70qeCwl/u+1Z9s4qAnbsxrkcUQ4zDB4BtAvQjySh9aOL9Qlzht2AUG LXkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777024759; x=1777629559; 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=JIaEBu2fXtiOblnnO/rwwIoef8J83XO0Fyvu0X3nK9Q=; b=C05U0mo++/vs2FuQUEUOfxeNL0f3DDGbptyQvDjceXpTd19aku5BLFEhLcGp8xOUm0 VGdoklUB/fWh067Ic5kJB5bSRNN6TGS3ZDWB3enbeF22m4Rt+BYZawmYy5PP111B5hfg OGOy1IzLCxc1AmuEWQQA56A7bNffGDsuKIzL0OvMucb1Ly21ZtqSp9yMsUbLqbgjg0xM KYX0KnEMOVcizV7+GsH+Jee4AzLkGekRHMaSJLNbIjxt1/SjylnXnq+YMaWv8kKnx4+h Try0pRUtksFujdxjbJCRspXLeccPFD+/ectvn1xvdI8fy4Jqp0iJe6gcrVPR7SEsEir4 2ApQ== X-Forwarded-Encrypted: i=1; AFNElJ9dN9sV8Gc2gIPsI1cacRTjSTt+NEuXqEKGOfR1BWuTctjtN8MRm9EPSMoW/jDEh/l5KiwXiAu0IEwWJ+s=@vger.kernel.org X-Gm-Message-State: AOJu0YzZyTcJeh08TohnG+cMptDpy9KuV7lixN1hyOSdQSUiHF6cZHBf B2Rirb8esUa2BgEGOXfuaVAC1TS21HOGCgxWdkMamXjeQkedjgRjZ6ZQgdLVud9f39xu/CbMreS YpgLqr3ENEBd789/LmSt9voR2yGbq5oq3mDRSKQEgRlrT/cKNeKizSzkidXb0CWHE/fQ= X-Gm-Gg: AeBDieu/GvW6IVAjA9v9JzCg9SePOUwMk4BSZvUTcfqWmdWkWi9LcRdNSwlzhmM2+ad 2ErAShaONXJtXxy6HczsPO2gx+sanAYZIWkldXa/DWD04mRAVOE/+QEant1G6JwO8W1l8Gr5Iuh EoJsLU86omH4u2eEoVjc10kzBPOuNMnm0bqoMsJq+YwOX00f9TjF0OOFaibMxolYylzZFyq+p+5 QZCpxjD5jcqHnqq2xqThgdy8koUymVkPq4SgghfMISzRRQK+lV80U9+cOoOM0QQcAVJoGGTgsbq mJBnNhG13M8ZUxKcAYcHay3jEtNlcOFCXsAz1CKJtZMojUfb2wyr15maPnzkBku9CUo4OARyY8S HiObEB5RG8buSOTafNf/8dqxAO1LB29gxmoXDopNdTO43mBoqJHvzwM09bbCRG5tg X-Received: by 2002:a05:6a00:3498:b0:82f:4566:bbdf with SMTP id d2e1a72fcca58-82f8c862662mr32861544b3a.14.1777024759376; Fri, 24 Apr 2026 02:59:19 -0700 (PDT) X-Received: by 2002:a05:6a00:3498:b0:82f:4566:bbdf with SMTP id d2e1a72fcca58-82f8c862662mr32861517b3a.14.1777024758896; Fri, 24 Apr 2026 02:59:18 -0700 (PDT) Received: from hu-ekangupt-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f8e9d35acsm23679702b3a.15.2026.04.24.02.59.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Apr 2026 02:59:18 -0700 (PDT) From: Ekansh Gupta To: srini@kernel.org, linux-arm-msm@vger.kernel.org Cc: gregkh@linuxfoundation.org, quic_bkumar@quicinc.com, linux-kernel@vger.kernel.org, quic_chennak@quicinc.com, dri-devel@lists.freedesktop.org, arnd@arndb.de, dmitry.baryshkov@oss.qualcomm.com, ltuikov89@gmail.com, konrad.dybcio@oss.qualcomm.com, andersson@kernel.org Subject: [PATCH v10 2/4] misc: fastrpc: Replace hardcoded ctxid mask with GENMASK Date: Fri, 24 Apr 2026 15:29:01 +0530 Message-Id: <20260424095903.1622565-3-ekansh.gupta@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260424095903.1622565-1-ekansh.gupta@oss.qualcomm.com> References: <20260424095903.1622565-1-ekansh.gupta@oss.qualcomm.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 X-Proofpoint-GUID: f4zuD8od4hetaG_83dRB0BRekHCR4s1- X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDI0MDA5MyBTYWx0ZWRfXy4aHrWs34BgI UXZdls5M5PtSYQ/Au64wnVllhVxruFGoDWo5jpe5bpLK74nANBSMoEd9ik0B+ThGHhxq8+mxpMJ AS1ZS11hNi8AjJotgxLXYuWasHiYbKosNQD/zhUkio1NJbm1KOq4vefebevudaAW9Kh/Vpap4PJ QwVV3EIlTSm0lIF6LZoZUbWohbP7sXoIUc6UBnbpzCkjbGXPRrGRYADPTNLn4kcBO8WuEyhYjz1 VYT/VTULCwzTJVez3f5O/THSMtGz7FtOnE7lIFWNWIe5aK0dv2HY3cQVU1UDGLKPqNjBsc0Umix 9zgTE8Q2/Tskenl9LHAGSK7iAR+BAoRQWKnAwjbny7/fKKF8MzbD6XmUbOJ2cuSpHROfbECr3Ad j6drQO5H9c3HV4meC8UC68q2+rppbKmuLaixiOd9bY40/aDHjpZjgfBk0h0KqS0Kf4KMOzR3KH1 lB2lL883fUdgpToZdVw== X-Proofpoint-ORIG-GUID: f4zuD8od4hetaG_83dRB0BRekHCR4s1- X-Authority-Analysis: v=2.4 cv=X+li7mTe c=1 sm=1 tr=0 ts=69eb3ef8 cx=c_pps a=m5Vt/hrsBiPMCU0y4gIsQw==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=EUspDBNiAAAA:8 a=HL6mAI18knL3XnPGOeUA:9 a=IoOABgeZipijB_acs4fv:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-23_03,2026-04-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 bulkscore=0 priorityscore=1501 suspectscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604200000 definitions=main-2604240093 Replace the hardcoded context ID mask (0xFF0) with GENMASK(11, 4) to improve readability and follow kernel bitfield conventions. Use FIELD_PREP and FIELD_GET instead of manual shifts for setting and extracting ctxid values. Reviewed-by: Konrad Dybcio Reviewed-by: Dmitry Baryshkov Signed-off-by: Ekansh Gupta --- drivers/misc/fastrpc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index a9f507a88c67..3f5d5d73be5a 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -23,6 +23,7 @@ #include #include #include +#include #define ADSP_DOMAIN_ID (0) #define MDSP_DOMAIN_ID (1) @@ -37,7 +38,7 @@ #define FASTRPC_CTX_MAX (256) #define FASTRPC_INIT_HANDLE 1 #define FASTRPC_DSP_UTILITIES_HANDLE 2 -#define FASTRPC_CTXID_MASK (0xFF0) +#define FASTRPC_CTXID_MASK GENMASK(11, 4) #define INIT_FILELEN_MAX (2 * 1024 * 1024) #define INIT_FILE_NAMELEN_MAX (128) #define FASTRPC_DEVICE_NAME "fastrpc" @@ -515,7 +516,7 @@ static void fastrpc_context_free(struct kref *ref) fastrpc_buf_free(ctx->buf); spin_lock_irqsave(&cctx->lock, flags); - idr_remove(&cctx->ctx_idr, ctx->ctxid >> 4); + idr_remove(&cctx->ctx_idr, FIELD_GET(FASTRPC_CTXID_MASK, ctx->ctxid)); spin_unlock_irqrestore(&cctx->lock, flags); kfree(ctx->maps); @@ -649,7 +650,7 @@ static struct fastrpc_invoke_ctx *fastrpc_context_alloc( spin_unlock_irqrestore(&cctx->lock, flags); goto err_idr; } - ctx->ctxid = ret << 4; + ctx->ctxid = FIELD_PREP(FASTRPC_CTXID_MASK, ret); spin_unlock_irqrestore(&cctx->lock, flags); kref_init(&ctx->refcount); @@ -2508,7 +2509,7 @@ static int fastrpc_rpmsg_callback(struct rpmsg_device *rpdev, void *data, if (len < sizeof(*rsp)) return -EINVAL; - ctxid = ((rsp->ctx & FASTRPC_CTXID_MASK) >> 4); + ctxid = FIELD_GET(FASTRPC_CTXID_MASK, rsp->ctx); spin_lock_irqsave(&cctx->lock, flags); ctx = idr_find(&cctx->ctx_idr, ctxid); -- 2.34.1