From nobody Fri Apr 3 16:08:32 2026 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (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 BDB8D33123B for ; Mon, 23 Mar 2026 19:37:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.158.5 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294650; cv=none; b=j9iai482v4Xwhb5M4dzZ8aMJvsbVFhWYrsHSBEPH+x/D0OK5q7qGTTfccSyoUWXfyaxckS6obRJkIofbUnBmt1UV682ZtRLdbd3qjbFvkQsvnjkVgWvaQIRDw9RKwfAQ/rkYuse7PxieuHCLM139tll4NGoxou5V9so904lOZzE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294650; c=relaxed/simple; bh=8V2f1FCAK7X2QkiffjAxRRJJPcSxIVFBd05Q6wjTxrg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uNEzBEs/wXJdLO3yQdUhHWmtkDjhqAUzZVtwxbl82LX7XgI2uJ9JyLPH+ilLqtX28VV6O18TpoOGDX+SSEwFNo7CU9cEgBagENB+j9r8JsAX0scwMyY3ID1AHKI+q6LmmmpJofQId1SGD86dtTIYByu2GDhKvg8oXfyknGo+eqw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=NADYHzsN; arc=none smtp.client-ip=148.163.158.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="NADYHzsN" Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62NBDnZv3820072; Mon, 23 Mar 2026 19:36:57 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=RZxNKsBKoJ571ekfA vqb3OIvAS23huqyON2q9aaJTAk=; b=NADYHzsNNhKP7wInFe/vqVHIC3nXBa+Fk BHgG1ALDdOdJCShMm58Yb5LkQLuvtKii8G5XwJ307o0+Lu+vmWb+UP1aulDHh6tE 8bfrveyC9VkRpPUGtung5485PeV4m7IevQeSlPychJ9IFPN6xzu5jspEY4ErbdaU ikHhxnECZs1KNhd+5ap+JsbmMyO5j/DaklCaBGmgLtiCxJXajaXMau26LOFGECj1 zkJEgD4yMxMF0x/BggQAsJfZa4RO4QGB3+7uSnbaZNWZRBWt6AAdSznM2MxY9hus Bvm+siDIcSOJgqpLzvFsT8cst7TJVgkTTmU/djPSkS9TdYFc7IxJg== Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4d1ktur3gv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:36:57 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 62NHs7Io012177; Mon, 23 Mar 2026 19:36:56 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4d27vjxj04-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:36:56 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 62NJasCY14418372 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 23 Mar 2026 19:36:54 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A32AF2004B; Mon, 23 Mar 2026 19:36:54 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id AA65220043; Mon, 23 Mar 2026 19:36:51 +0000 (GMT) Received: from li-7bb28a4c-2dab-11b2-a85c-887b5c60d769.ibm.com.com (unknown [9.39.24.217]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Mon, 23 Mar 2026 19:36:51 +0000 (GMT) From: Shrikanth Hegde To: mingo@kernel.org, peterz@infradead.org, vincent.guittot@linaro.org, tglx@kernel.org, frederic@kernel.org, anna-maria@linutronix.de, linux-kernel@vger.kernel.org Cc: sshegde@linux.ibm.com, kprateek.nayak@amd.com, juri.lelli@redhat.com, vschneid@redhat.com, rostedt@goodmis.org, dietmar.eggemann@arm.com, mkchauras@gmail.com Subject: [PATCH 1/4] sched/fair: get this cpu once in find_new_ilb Date: Tue, 24 Mar 2026 01:06:27 +0530 Message-ID: <20260323193630.640311-2-sshegde@linux.ibm.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260323193630.640311-1-sshegde@linux.ibm.com> References: <20260323193630.640311-1-sshegde@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Reinject: loops=2 maxloops=12 X-Proofpoint-ORIG-GUID: j-7IkSL2Aazp0rYg72iVsMEk-xW20TW0 X-Authority-Analysis: v=2.4 cv=aMr9aL9m c=1 sm=1 tr=0 ts=69c19659 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=Yq5XynenixoA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=Y2IxJ9c9Rs8Kov3niI8_:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=pGLkceISAAAA:8 a=zd2uoN0lAAAA:8 a=xKVtjyDvgW7pnAdJ2ZUA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzIzMDE0MyBTYWx0ZWRfX8lDq6Olv+YRy WAhoswSTlvbDl0FajmmPw1vx12KIrTfRBJ7RHwMN9RyoKXoju4IAsNtoO8IbliwTu/Mf//HUrlh BHTOAiHN6kSO1lY2/4u9CFCv6ytezoph0UcTiz0o520sS5z1OeBa66l+ZLjCV4gdvrebi5ZLiYJ ZF+oZOxqc6MFWmdMYNy9WDaPi5pBI/4iEXjIVIgbRjgVheA2Vvajsal2HnbP1FRl41w1qkNnG7K s+pEUW/VzjGbUqOHxsfeUD93U3rEGdpVCkOJOb6yxuwRh7lzn0lcRnuQk90coJ0hHzjmt1lLS+5 HG78Xt/lt8WDlO4Ns9IsEVV0X0WSlEQA+QHzDRnof0Fmomyx3y980qlPPgFE8fdBlLPvDLFdHfN E4WGaQ8qrvcwLA8SikbCNpCQYWi9uVzN0/xDmgMyBK+Yi1R0qomg7FmvH8x3xWFdy5aeOUOuGB3 eo9uXhwq/SfROdPAasA== X-Proofpoint-GUID: 39C_Qrf15ihGMhc6NROA7LXg_lKrrMhy 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-03-23_04,2026-03-23_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 lowpriorityscore=0 adultscore=0 impostorscore=0 malwarescore=0 suspectscore=0 phishscore=0 priorityscore=1501 bulkscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603230143 Content-Type: text/plain; charset="utf-8" Calling smp_processor_id() on: - In CONFIG_DEBUG_PREEMPT=3Dy, if preemption/irq is disabled, then it does not print any warning. - In CONFIG_DEBUG_PREEMPT=3Dn, it doesn't do anything apart from getting __smp_processor_id So with both CONFIG_DEBUG_PREEMPT=3Dy/n, in preemption disabled section it is better to cache the value. It could save a few cycles. Though tiny, repeated in loop could add up to a small value. find_new_ilb is called in interrupt context. So preemption is disabled. So Hoist the this_cpu out of loop Reviewed-by: Mukesh Kumar Chaurasiya (IBM) Reviewed-by: K Prateek Nayak Signed-off-by: Shrikanth Hegde --- Split it from v1 and found a few more places. Rest of the bits of v1 is worked out separate v1: https://lore.kernel.org/all/20260319065314.343932-1-sshegde@linux.ibm.c= om/ kernel/sched/fair.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 1b62cb68faae..9298f49f842c 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -12626,14 +12626,14 @@ static inline int on_null_domain(struct rq *rq) */ static inline int find_new_ilb(void) { + int this_cpu =3D smp_processor_id(); const struct cpumask *hk_mask; int ilb_cpu; =20 hk_mask =3D housekeeping_cpumask(HK_TYPE_KERNEL_NOISE); =20 for_each_cpu_and(ilb_cpu, nohz.idle_cpus_mask, hk_mask) { - - if (ilb_cpu =3D=3D smp_processor_id()) + if (ilb_cpu =3D=3D this_cpu) continue; =20 if (idle_cpu(ilb_cpu)) --=20 2.47.3 From nobody Fri Apr 3 16:08:32 2026 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (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 F12A33DCDBD for ; Mon, 23 Mar 2026 19:37:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294662; cv=none; b=F99arbnFIfWi9S22j9l/gD/038En5f76ki+KCc1UOAP2Eyqk4nmQp/pIahHjUja8PaKjAwiO+GCLAiUuvjfwNtD5U658qCQ90uClFFhK02xfJiZgeqlS6rlhTa+/Hfgd/hDtP5IjLWDNOxOVXG1EsDxu34p2vkPLVatUrCeWQLY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294662; c=relaxed/simple; bh=/mV7Ia/OmeolzUt2rk9SQddn6N6riVadAEwTGt4kgWI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=HToH4fxUHzHb/0aQzxvdWOP5VAZG35qBB4yZkmHk9LxOJpmuj9aSh77+DFwRnDbzXclXqDOeYzPGexrWhyC+Kd/yQfx6X/JHvba6z+6xLfuNsBqYqzgIGA06aD+7fCwFWMKl1OgTlWQ3uFynBRAQQBkCeg4nex55etBFQIARJo8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=pYBrSPt4; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="pYBrSPt4" Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62NIPg2Z1391689; Mon, 23 Mar 2026 19:37:03 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=pPxSfUCqrS85OgDMh p4pdPH+4XL0G6r2sGkWlxj4M0s=; b=pYBrSPt4VoW/DKQoZ9HefpDzoSJGa72W3 5f6y0jzLg/bfHaiORZDgJuFYxIJaSWIGYRkanm0TFhzEmEiqq1foJRp7YzayneBe 1Ida8sos+b/m49RU/zqPaaklREGhKpeUEilkfqcMgjUaSYE4s/4UQUL3P4Bss4nI KNVcodqD+AxwRSO9eCo2udElAuVYBUjVeItYTEWYxNKbJr9qagUJNMEAz9YdFd9C dFbUoW1HHBiU8npEF5ceBn6WOS7fzu74RoI3cxKy2vAw7l0MxNXMwNDsjTHZfObx sbrs+JsII7lIJBp24M5KGVNVOh6VOi62G6j0/lBrIBNGm6YdFEf8g== Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4d1kw9rev1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:37:02 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 62NGD3i5005969; Mon, 23 Mar 2026 19:37:01 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4d261yeucg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:37:01 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 62NJaxZl39453154 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 23 Mar 2026 19:36:59 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2A1B82004B; Mon, 23 Mar 2026 19:36:59 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 47F8320043; Mon, 23 Mar 2026 19:36:56 +0000 (GMT) Received: from li-7bb28a4c-2dab-11b2-a85c-887b5c60d769.ibm.com.com (unknown [9.39.24.217]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Mon, 23 Mar 2026 19:36:56 +0000 (GMT) From: Shrikanth Hegde To: mingo@kernel.org, peterz@infradead.org, vincent.guittot@linaro.org, tglx@kernel.org, frederic@kernel.org, anna-maria@linutronix.de, linux-kernel@vger.kernel.org Cc: sshegde@linux.ibm.com, kprateek.nayak@amd.com, juri.lelli@redhat.com, vschneid@redhat.com, rostedt@goodmis.org, dietmar.eggemann@arm.com, mkchauras@gmail.com Subject: [PATCH 2/4] sched/core: get this cpu once in ttwu_queue_cond Date: Tue, 24 Mar 2026 01:06:28 +0530 Message-ID: <20260323193630.640311-3-sshegde@linux.ibm.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260323193630.640311-1-sshegde@linux.ibm.com> References: <20260323193630.640311-1-sshegde@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Reinject: loops=2 maxloops=12 X-Proofpoint-ORIG-GUID: Wk_CldTOdosdkue9j8qy2SKHZQeAiD8z X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzIzMDE0MyBTYWx0ZWRfX+VLellchgULf G0tCvZMOd26hfRxk0yrObKNODOHjbb861zRCmahoH5CyeAnmrLGho1ncKZQQawMEQEzi39JqV4S B6vxpQkTNfERtURVyIlIeIe5ViXq3mO/V8K2g80rmr6EXJSS3lIc9aKO9LbWH8p6l5Wa8ZsaH5f 10LUx1Bl87sKCdE4IJLOeQziJEh7HhI6f2tUDwpOTb6gLVZtURj7GudI/s67LSOSF5cU6SfRvT4 EEcZFwOVPgZnj4khGGrI6PyWYyUrdAE3gkLyk4FFMEx+lU/jrVWGs1102ZDsX0CgL0HLimJF/Ym QzMTLWYn3CP8DMwls+ff5C8UClHeR0gwppLTM3XzvDi9iwDqtwx2sAfAQXMLMhIl7nv2K3jbqin 5iG5JxJVrdug/l5v5IjTCVC7GiLU3n9UxVUA+kAsrJtfTSxGkkvfHq8kCPa+Pso2y9f6/UjQc0i 5cjfv0oL2apSaaPYHKA== X-Proofpoint-GUID: 9FvvVedCx6fW_lSSpdUhj1ZnoID26Ipl X-Authority-Analysis: v=2.4 cv=OsZCCi/t c=1 sm=1 tr=0 ts=69c1965e cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=Yq5XynenixoA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=wFM0gQBc-kvGGd8btegA:9 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-03-23_04,2026-03-23_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 adultscore=0 clxscore=1015 phishscore=0 suspectscore=0 lowpriorityscore=0 priorityscore=1501 bulkscore=0 spamscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603230143 Content-Type: text/plain; charset="utf-8" Calling smp_processor_id() on: - In CONFIG_DEBUG_PREEMPT=3Dy, if preemption/irq is disabled, then it does not print any warning. - In CONFIG_DEBUG_PREEMPT=3Dn, it doesn't do anything apart from getting __smp_processor_id So with both CONFIG_DEBUG_PREEMPT=3Dy/n, in preemption disabled section it is better to cache the value. It could save a few cycles. Though tiny, repeated could add up to a small value. ttwu_queue_cond is called with interrupt disabled. So preemption is disabled. Hence cache the value once instead. Signed-off-by: Shrikanth Hegde Reviewed-by: Mukesh Kumar Chaurasiya (IBM) --- kernel/sched/core.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 49af425f6a73..14996c7a0a31 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -3900,6 +3900,8 @@ bool cpus_share_resources(int this_cpu, int that_cpu) =20 static inline bool ttwu_queue_cond(struct task_struct *p, int cpu) { + int this_cpu =3D smp_processor_id(); + /* See SCX_OPS_ALLOW_QUEUED_WAKEUP. */ if (!scx_allow_ttwu_queue(p)) return false; @@ -3924,10 +3926,10 @@ static inline bool ttwu_queue_cond(struct task_stru= ct *p, int cpu) * If the CPU does not share cache, then queue the task on the * remote rqs wakelist to avoid accessing remote data. */ - if (!cpus_share_cache(smp_processor_id(), cpu)) + if (!cpus_share_cache(this_cpu, cpu)) return true; =20 - if (cpu =3D=3D smp_processor_id()) + if (cpu =3D=3D this_cpu) return false; =20 /* --=20 2.47.3 From nobody Fri Apr 3 16:08:32 2026 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (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 EC8F2317173 for ; Mon, 23 Mar 2026 19:37:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294661; cv=none; b=M41hSgacV+NDtZmatuyG3Oh+4RA7qWO27R2F4y2QBj2+6A526YMpMcxMwp7x0G1hvMNvJEX23df5ErUKeM4jkU3WRU3X3w80mrJfFdBBST7ayIYErWsq+wRzbjzMArjLxNJ4+w8GMS5VWTFMsRW2sxKFPzwpX+/OfAIJ0pMYTzA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294661; c=relaxed/simple; bh=cOJ7Upq5ppEcCvR/VEdbHhF1LNKqRMxlhNaoeRRZuMo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=m4gdC1yU9ghjoIeSM/xl9i6x4opH9ZqVAPxFmIj1UjO25mJtHYNdg/CVaIMCW0oUuRMbo1XEAOYlN6cVMmA+uLRKD0xsvwkWcf8qOvN5wjMzbPxXa4Cxn+HDvHsnMi/iiNahl5TL++fjzwZAJPcb8BkkvsoeYIEbBEdoJopFmxg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=q2n8r9hV; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="q2n8r9hV" Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62NDcosO092005; Mon, 23 Mar 2026 19:37:07 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=OeES18pEuNtpa7xN7 ShvPbG8O42+9pV/4FyefHehD+c=; b=q2n8r9hVun/s0A7HprfbYYtn4gI2sRuMU rqLLa43O5AKp7ife8Zy0tbEvz+rdHZ3pNi+p6PghxEs6Y1j5WhLFEbkvIlS3huur zqC8cLEN1R7MvBBwDYC+9nUWFpcPBnurVGqv8PlF1u1O62EgMSzWs47sNT8bHFRY 8yMo/rEoHSGjgYpW3pOCSMqpIeH64G7VEMcZ6IgqIDMAgptqWbYKIEMnVG3OHLBL UB5/uikSWqI8PqV0sX8LC/Lze9AhXqAAzLQzu6BOim3O9r8mYpXm6kPS97YDTs5b +TLxB8mja3zOt30Vw7xFKvLKQL4yDk9ao+zipbUBKlS/bX7leIFhg== Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4d1kw9reva-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:37:06 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 62NGcJYJ005991; Mon, 23 Mar 2026 19:37:05 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4d261yeucn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:37:04 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 62NJb38m49217860 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 23 Mar 2026 19:37:03 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id EB34B2004B; Mon, 23 Mar 2026 19:37:02 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 482C220043; Mon, 23 Mar 2026 19:37:00 +0000 (GMT) Received: from li-7bb28a4c-2dab-11b2-a85c-887b5c60d769.ibm.com.com (unknown [9.39.24.217]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Mon, 23 Mar 2026 19:37:00 +0000 (GMT) From: Shrikanth Hegde To: mingo@kernel.org, peterz@infradead.org, vincent.guittot@linaro.org, tglx@kernel.org, frederic@kernel.org, anna-maria@linutronix.de, linux-kernel@vger.kernel.org Cc: sshegde@linux.ibm.com, kprateek.nayak@amd.com, juri.lelli@redhat.com, vschneid@redhat.com, rostedt@goodmis.org, dietmar.eggemann@arm.com, mkchauras@gmail.com Subject: [PATCH 3/4] smp: get this_cpu once in smp_call_function Date: Tue, 24 Mar 2026 01:06:29 +0530 Message-ID: <20260323193630.640311-4-sshegde@linux.ibm.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260323193630.640311-1-sshegde@linux.ibm.com> References: <20260323193630.640311-1-sshegde@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Reinject: loops=2 maxloops=12 X-Proofpoint-ORIG-GUID: b3IKlQZjDTQkyBVXNzhhGV9PpttrSGHp X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzIzMDE0MyBTYWx0ZWRfXwey9TYiHH04w 7CNgIPuMZ+ouZqhqV64334cF6BcIF3hZdhESe2tBxrmEzk7UV+SRJmIHP8P2NUyux8W6UIYGX06 ThXFswfudhWiINeR2Za/Mn9jR7E/3rBWiTGF1fzDGBEF9VcQP69gjGvTKMKiwEElUb2t5Rbg6Sk RQStPAGJtrAH7EPMyE48Ji32gywAvMz6QLwrj9avAcoLrzvbMkvD3o6g5ihDmd6jmKKaEyYM+wD uqzR4ReO6ExtOB9iPzfuM8x/0lmTfdD7UWeewGM9mw6FXhiLjlgvFgzTGxukjvwfJ8Rm3Q7n9Cf y1E52VCTXSgmy73zyG0fu+Y1kuxf2LQyArvgEX2KazV2gHucNzJed2p6ys5mKmc4SR9UxN31hfx HGcyGiuNFLb8iKx0w1R2xCR64+3TxXqRE+lstcD5ST+kD3x9tS49JZthjnVqyO2Hnb921rBVEtj 4Emzb5R4sVXBkRRZYRw== X-Proofpoint-GUID: 9A7p2RRVwEQ5tQum5yMXKWtI3o_vts8O X-Authority-Analysis: v=2.4 cv=OsZCCi/t c=1 sm=1 tr=0 ts=69c19662 cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=Yq5XynenixoA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=BobugZK_ifuu3kB8F8kA:9 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-03-23_04,2026-03-23_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 adultscore=0 clxscore=1015 phishscore=0 suspectscore=0 lowpriorityscore=0 priorityscore=1501 bulkscore=0 spamscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603230143 Content-Type: text/plain; charset="utf-8" Calling smp_processor_id() on: - In CONFIG_DEBUG_PREEMPT=3Dy, if preemption/irq is disabled, then it does not print any warning. - In CONFIG_DEBUG_PREEMPT=3Dn, it doesn't do anything apart from getting __smp_processor_id So with both CONFIG_DEBUG_PREEMPT=3Dy/n, in preemption disabled section it is better to cache the value. It could save a few cycles. Though tiny, repeated in loop could add up to a small value. smp_call_function_single/smp_call_function_many_cond is called with preemption disabled. So cache the values once. Signed-off-by: Shrikanth Hegde Reviewed-by: Mukesh Kumar Chaurasiya (IBM) --- kernel/smp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/smp.c b/kernel/smp.c index f349960f79ca..4c57104d1cd3 100644 --- a/kernel/smp.c +++ b/kernel/smp.c @@ -677,7 +677,7 @@ int smp_call_function_single(int cpu, smp_call_func_t f= unc, void *info, csd->func =3D func; csd->info =3D info; #ifdef CONFIG_CSD_LOCK_WAIT_DEBUG - csd->node.src =3D smp_processor_id(); + csd->node.src =3D this_cpu; csd->node.dst =3D cpu; #endif =20 @@ -832,7 +832,7 @@ static void smp_call_function_many_cond(const struct cp= umask *mask, csd->func =3D func; csd->info =3D info; #ifdef CONFIG_CSD_LOCK_WAIT_DEBUG - csd->node.src =3D smp_processor_id(); + csd->node.src =3D this_cpu; csd->node.dst =3D cpu; #endif trace_csd_queue_cpu(cpu, _RET_IP_, func, csd); --=20 2.47.3 From nobody Fri Apr 3 16:08:32 2026 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (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 07EF83A961B for ; Mon, 23 Mar 2026 19:37:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294669; cv=none; b=pnztwjrQN6ybufTwzrEUIn0gsASESSglH5b1E3PffVs4xvcQ35/rwk+UeinYwpztnaD4TGnfMSXh5pjGaeJPyi/w1ggvaDiZjVoL9frX/tRUhL5xQ8JGi4VI3wxx3LruddeCFkzJn9/1pDkL5hs/Rwo3cpG8+NuEozybV9j36EQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774294669; c=relaxed/simple; bh=93qNSQmwtYsKcYq4sOnWr++2POgpg8x9gI8eeiuXms0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pL6cQV3jJP56rah4CqJPObePvwNpFtYtEPY5cdjXZaR2oAmPjo/DC8ILhpR+IyWVFiL/7QgKPE+4+ReGRMuUqO1645VtKs9zE8ybkCrwu7vHaNsbzNEjcb4Khw/VZDW1IvceBuzfpOo353kSIMaz6mJ2yqexZjefG9jOQvEzoJ4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=N/B8tU+H; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="N/B8tU+H" Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62NBDtsG3679602; Mon, 23 Mar 2026 19:37:10 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=uIHdjb/zUE/zJuTP9 x3NXHgG3Hnu4KSptzLWFWnvdkU=; b=N/B8tU+HNSEjlyiptQwoGB1v7tHdkftcL frDfnE2nEbIiWBHDEkL+IHOkus0pY5jRH5yTFRiyStt590U9RT9H1jIbqCP5XACT u6jEkzM8RRei6NF5PVfvJ7g8bK+sWeYkL307Ds3ziMQrpy7ysDjnhlkal570620r q+xrsaSFxGHeonXatBentw66p1UHuRE4GkKuY4CrAFhnTCqUeRmo6qEtvFPEENFN d0AXDRBHWBnz1CoHxq0eIanB/AF/l7yFl4pn/2gozJzDBNZzu97odzfUH30dEb1Y 6wsAA+gGZgmUMmMQ9KBgvlVWZi/qPTe+FmmfWmAUyfpJNtVTVIZfA== Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4d1ktxretu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:37:10 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 62NI5mq2004398; Mon, 23 Mar 2026 19:37:09 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4d28c1xfjf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 23 Mar 2026 19:37:09 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 62NJb7La50987286 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 23 Mar 2026 19:37:07 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5933C2004B; Mon, 23 Mar 2026 19:37:07 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5FA6320043; Mon, 23 Mar 2026 19:37:04 +0000 (GMT) Received: from li-7bb28a4c-2dab-11b2-a85c-887b5c60d769.ibm.com.com (unknown [9.39.24.217]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Mon, 23 Mar 2026 19:37:04 +0000 (GMT) From: Shrikanth Hegde To: mingo@kernel.org, peterz@infradead.org, vincent.guittot@linaro.org, tglx@kernel.org, frederic@kernel.org, anna-maria@linutronix.de, linux-kernel@vger.kernel.org Cc: sshegde@linux.ibm.com, kprateek.nayak@amd.com, juri.lelli@redhat.com, vschneid@redhat.com, rostedt@goodmis.org, dietmar.eggemann@arm.com, mkchauras@gmail.com Subject: [PATCH 4/4] timers: Get this_cpu once while clearing idle timer Date: Tue, 24 Mar 2026 01:06:30 +0530 Message-ID: <20260323193630.640311-5-sshegde@linux.ibm.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260323193630.640311-1-sshegde@linux.ibm.com> References: <20260323193630.640311-1-sshegde@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Reinject: loops=2 maxloops=12 X-Authority-Analysis: v=2.4 cv=IqITsb/g c=1 sm=1 tr=0 ts=69c19666 cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=Yq5XynenixoA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=uAbxVGIbfxUO_5tXvNgY:22 a=VnNF1IyMAAAA:8 a=BobugZK_ifuu3kB8F8kA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzIzMDE0MyBTYWx0ZWRfXzDioJbgbjrgd kpMkZmu0ueFi7we5igkmFBbeQR2nVQBfBEnWPeNbZ2Qe8RMJ93y4TsmZE3caD1Rgxs9enP/RMO1 yPkO4S7+A5eG43QFQ5E1KTdJFbVG2lfSUH0zg0Ch1sLiWpphzG8qbV5SNJ8bVx/+gBdgUcWWLhY vXsHBLlrn5XCVVtH0VVTlgBoHvSb/Pwyf402mx3PyIIFWKCPLyp7KBVVnDr6VqosBI1nTuccRSv 3IYiY1pvkWSeyZ/57WlLYM9jKjlI9qYBNbVMNZ7s+ejLCSPXNABQNkETj1AVhy3KLUFDe5xuszS Li1T8VJr72X15M/dMzDfSs5KJ+l6RGPa3SeknEJ84e9kVk8ktgtlMonHXWsEiOEv0IlkSBCwvV1 dHwM9kQDs88iweMA4X9xj3B9IxLK0d5hNrSXeTsvi+Fm7GNWr96rUi4XxYOFocv/5zvyej2QwiJ SUZ+3XzJYuwAIKADhGA== X-Proofpoint-GUID: 5KnWRMH25XCFhjPRXmidPkngu30zKObH X-Proofpoint-ORIG-GUID: yFnMa2li9e7R0GP7iulTpaeZQj_4PhV- 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-03-23_04,2026-03-23_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 clxscore=1015 spamscore=0 impostorscore=0 suspectscore=0 phishscore=0 bulkscore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603230143 Content-Type: text/plain; charset="utf-8" Calling smp_processor_id() on: - In CONFIG_DEBUG_PREEMPT=3Dy, if preemption/irq is disabled, then it does not print any warning. - In CONFIG_DEBUG_PREEMPT=3Dn, it doesn't do anything apart from getting __smp_processor_id So with both CONFIG_DEBUG_PREEMPT=3Dy/n, in preemption disabled section it is better to cache the value. It could save a few cycles. Though tiny, repeated could add up to a small value. timer_clear_idle is called with interrupts disabled. So cache the value once. Signed-off-by: Shrikanth Hegde Reviewed-by: Mukesh Kumar Chaurasiya (IBM) --- kernel/time/timer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/kernel/time/timer.c b/kernel/time/timer.c index 7e1e3bde6b8b..04d928c21aba 100644 --- a/kernel/time/timer.c +++ b/kernel/time/timer.c @@ -2319,6 +2319,7 @@ u64 timer_base_try_to_set_idle(unsigned long basej, u= 64 basem, bool *idle) */ void timer_clear_idle(void) { + int this_cpu =3D smp_processor_id(); /* * We do this unlocked. The worst outcome is a remote pinned timer * enqueue sending a pointless IPI, but taking the lock would just @@ -2327,9 +2328,9 @@ void timer_clear_idle(void) * path. Required for BASE_LOCAL only. */ __this_cpu_write(timer_bases[BASE_LOCAL].is_idle, false); - if (tick_nohz_full_cpu(smp_processor_id())) + if (tick_nohz_full_cpu(this_cpu)) __this_cpu_write(timer_bases[BASE_GLOBAL].is_idle, false); - trace_timer_base_idle(false, smp_processor_id()); + trace_timer_base_idle(false, this_cpu); =20 /* Activate without holding the timer_base->lock */ tmigr_cpu_activate(); --=20 2.47.3