From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 0455E10E9 for ; Tue, 28 May 2024 00:36:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856562; cv=fail; b=Wp5R6MP1iueQhLjLyVCMt6yWxtt1E9m19RKsVNC0bvhmQ//YFoL82tVm/Vt/zL0giTKVJGVvuGlVbDNqyc1MraiQzQpJrQE/Uvg4LXZ9l7cyQrfkFR8KjvpqT+yPkICN1kp0or7grbc2MN7HTOtZlRrhpZ9Qw1BrVEGIB/+wZ94= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856562; c=relaxed/simple; bh=gPa8FuZDe/yUM5tbumYLCUhldtqTKILL20GuK0bO/gg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=N+4IhT/7rSPlgcGXvOw3BIibGX3Ck7HqtsB62uYfqy6dpPgyjB8oQYdyqn9f86GQfBDmgExS7s915xVOlMCicDBnIpyuANHkvFeCCx7XRTATp0u2N0YNuJ5zX6fG5k4s97Y8LELBmZgLipxZh1VBK/nFnBndC/vtmKsXtr/CYnQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44REO8Rw025930; Tue, 28 May 2024 00:35:29 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DS2H9JaXjS/U6WjAMQnKpq2ERfUlXB9/+1zLNhOsH9JY=3D;_b?= =?UTF-8?Q?=3DLt15dLHpG81YSU7lrZmKPMKGnfyF3HD1ZxY4e31Orh4XSkGxzDGm/b10uzez?= =?UTF-8?Q?1BXo9GM3_msNy2aLkq9elzGBn7kd0JBzurFe32Fhog2e9ojlr8eNEJUrxFY6sFX?= =?UTF-8?Q?dWu+41+/Ec91X7_nv6Y7bGVYHDMmE6f4oF84SfZoNJSRXzusUt3ph5vBltchxlY?= =?UTF-8?Q?4LDlPKvPCy4KvGb4ttLP_JFudWzV4h8RJsOEGMj2e5ds5nN/DgqLLOwXfDNHzhu?= =?UTF-8?Q?KnsQE0KWZEzfqqbMrQ4lTStcV5_TYZHJAIKPOskEVRDU6GuE+WYbG1fPW0j8EO8?= =?UTF-8?Q?+romorGpPgtoxrNUxvT0WW5i/wjfh+HJ_XA=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8kb37q6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:28 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RME2Oi016172; Tue, 28 May 2024 00:35:27 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtf67-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XWaQz03+osaa52jeG0FpEIwcWfq1ft5yyi9ncpM0KYSnyVy79jT/ISCT81IKdVFgjmlSJNz1LmRCZTFiga5RYms2Xj9lDazUBasVsqZ3Edvv/OxVaYupwSXj+B+kC3WsWfvq2SPwJPJtC+dYa7UZ9jlMoBhIENar4Zh6WAxxXn2tYsELHirtxKV5FEU+r14hNmPeZMzMj86G736BJ4YBehjS/yWFGZJ4eXDBMHFyvOCTnDptBGQN+Hh6Blq7j2TYBGEmIljFgShRIqh1f7fZ7lEM8OeLZFwN0t20DjSM0YyL4LuFDOjBgLTrPgTo+KWHXmoYoSno6ecuqYodKxkyIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=S2H9JaXjS/U6WjAMQnKpq2ERfUlXB9/+1zLNhOsH9JY=; b=N32Cfk704G5yZiTfddwUY7ylmFQz2IK55vqWqUyIi8qSRGzpEYoC8lesU3d/YEZSA01bFscV5ye6PmHNMY68pps86eXSNRFc9bSYp40oh9AArUH7w2cutbhkBuhtb5w+8evh/BrKkYqZi2FOYsJph5p9hPQRiwhq6rFJtSkyqnpthgPPPmDA+PkX1b/kJW3lde+6ezJg14z0bhs0ABynmoBVA+aQ5bbMD4FycC2pSNdmSE8AmLzKZX37xRLXjgiLUBsusqqNs8mYSNvA3hcTzEi3qCtzrOeVJl54TWMq3HaASHHdsAjIiI2v9RwdMdkZQIO5loj8TwbhY10bKxfWOQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=S2H9JaXjS/U6WjAMQnKpq2ERfUlXB9/+1zLNhOsH9JY=; b=KHmEZ1eG2u32iXgyxupqhff50C1ybM4eGkthnjsnfMBQiKJHLMx98LIvZGdq+PgPlVxLcsrnRSJCYHw553Ea0nHefpmgQ/PnP/ZC+atTiTTj08LvlyZ+/iJtXgJF/sN0ez7M3AVb+ssoYj16jCMoMDTzqgAObodWk05IZD25kpI= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:25 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:25 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Sean Christopherson , Ankur Arora Subject: [PATCH v2 01/35] sched/core: Move preempt_model_*() helpers from sched.h to preempt.h Date: Mon, 27 May 2024 17:34:47 -0700 Message-Id: <20240528003521.979836-2-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P220CA0026.NAMP220.PROD.OUTLOOK.COM (2603:10b6:303:115::31) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 2f429ddc-e135-49fc-f32d-08dc7eae10bc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?7KBwWMvwdnLUgjSZ+/lQwisnjk+OFOHkXVKyCmQF2hJs6UZdUCsmGHAcorCe?= =?us-ascii?Q?JNrmxK/DPc0LCySJI72IPMznI6LiL3BrH0AGA5DppnA4bfOmAgg3VH20G/z+?= =?us-ascii?Q?3W4hNLjjLZxFju/ySp1xI4p9WKd0Yd4oOkQhATJfJm6KSwd0fuq/F4lK7Myd?= =?us-ascii?Q?X5UdqGDLMRiU/CJ4nAZCxg9wAIbJB5o7GGRGhYy3U//4DoS+P5Hf8/LwP+Wu?= =?us-ascii?Q?JDhv7xXk7nGfEdORj/1PrOu/cPXptrTFlR3oebSKS13CYDfcffR4d8LIxi6n?= =?us-ascii?Q?ECPopSlJtnuR65uBBZHMPV+cyYb0lS91rllR/wEV5z8LyReN18+SaGcPMzEc?= =?us-ascii?Q?E05n0q0gmmVZg2TkYXHnHHVq3BC79klpn8OeONxmHF0sfa5+rIIxUODES9F1?= =?us-ascii?Q?YP3UVCqUS+7DMqDGcOAjsoIQTGiQvgYsnob6hkbgKFtrDaIVwSIOojzMKCc9?= =?us-ascii?Q?RvrHDfPn55LQhBB9frNJ7FhSapacxjDppOhJF8hktK/r1NZocf4yIsEbNEJt?= =?us-ascii?Q?Ri/jkb6bF0I5jKVC/k1R8BlUxOC22W+G1wgGXDA9LVYfNNVNUC6Qq25mKl3m?= =?us-ascii?Q?WAhVwQCDLuUxThE+m6z4T5XKInQg4FRdvVdO2X26F52pwm67Y2v8otMu6wnl?= =?us-ascii?Q?9XE0YZNLf+qn4UBPQND7p8CkM8pFjKgqvGGI+vAqVy2b5JjmGqM+ivXc3OdY?= =?us-ascii?Q?T5EwgPbM6ABNvYXfPUurUEWuKcWYeAOWqet+cQLISOYJE1etUfW1StT48Xlp?= =?us-ascii?Q?/voksPrZQLjEnXAm/BQ+jA7Yq1OdIRGIZmwrSer8RPR963nTlO2/+B4NvOxd?= =?us-ascii?Q?TVPevWjnEIbOGWWQ/aneCOrrP9idcyDeq43vSzsHK/kikZgXVxeDa8j8h90i?= =?us-ascii?Q?6NwTOqPJZhytA9ORogLHNC8OV6GGBriNH9WMZYf3O+pAt/6gwrHUMUF6MgtR?= =?us-ascii?Q?lCdSupTozCcw2Ih1H03EO38nR3E6XOElS/msZ+HQKKjHM47zdy32a7MgW2QB?= =?us-ascii?Q?NWQGzAU2Jo07cbgRGx8bOEYmuXofil4B4Pt3S8O7gE26iJ2B8fFTQYmg1iKS?= =?us-ascii?Q?Vh4VNqiVlY0YszzVpkmvfcFo+UXrjFEvXhGTF8CJKc+0h0i7ZtNgbtiUzsOb?= =?us-ascii?Q?UVyXg8Rte9DLWElUHmX0n8Fm+aw1AXPF5dORXw5UI2XvFPhW2PUjc2S/3Ms8?= =?us-ascii?Q?Y8OekgQA6wSwkI4XMSbCbUhAupmdw+Zz1B8MAC5wQRpkpiKQreANZZGHrYvP?= =?us-ascii?Q?nnFVGi6KcWUODltApdVBZWg9yYPlxGeLW8cSkP+BgQ=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?KJqb0JLGi5nIoHidtFv9sWBpdRHSYQjfULMb4sW0AE5/3viJU9PcHrYiKGgt?= =?us-ascii?Q?quu8iuzz/18wCHGdbI4AY8IwXzGiVGowq/Oahpwz9iKbxoeQeaLK7QY7vzay?= =?us-ascii?Q?IHb1dSxUG1CHXnaX0cqIvqGwc458CBoampyOOxKvYSFtg7AxPwZjugV+ADzy?= =?us-ascii?Q?pNbHKR+hBVyfqRjTlSHYVFc1YKv0EwptvjXFoNjgrarCyq6B7a0lQdSGc55I?= =?us-ascii?Q?LW2/50XQvQbbbjFmje7QkDnRCmd1syVXJyACI3vTXM7OuyLaw/mrCZxX0dAy?= =?us-ascii?Q?UCL0+HKpT2YHPMIQFrZcVw2q5OWvIBvuzRRpZ7x72+2wrjtd30WQihXdbrl4?= =?us-ascii?Q?UVRzk/gUbzffsVhOHKXH7pBwU6dgyABksknlGjv3cjZzvjx/fZSP9Wg+clfL?= =?us-ascii?Q?bxoQO+l9vMWHW/+zVhErUir/8XTNK73tiGFt3QzeJgOe+fgJUhYqV+GnEMFe?= =?us-ascii?Q?HzDTBRDua1PCoIUZfihYdDZWtv9TaMEHsXeqp6Gt6bdrqbxFkPRwl3V34oGY?= =?us-ascii?Q?hO70ZdgqrK98gIP1dyH+hRBIRyZmaPuhS0xWgGDypK1qFaqTRYU8/3GTh9ZV?= =?us-ascii?Q?e1BA4rcXTfD33INQ2yyf39/IsX6CLiz7H3Z91T99LKdZlO7h9PX/vRLzwmin?= =?us-ascii?Q?xtaSeOcJXbgZEibn04hBuErWZwaeiRTGJ72UClDKNU13h5nMKV7IIJIZKJiK?= =?us-ascii?Q?Rm9cqgwWepCs9ounzpfPVbCuoLxLjhhAGn1dea+XsVi7PpVlqdkcA61ZpxG+?= =?us-ascii?Q?s//jRiVygEAN5/55vskhjD11MYCQ08/mUqi1nV5N12dR67i+JnHuEA1uWJk4?= =?us-ascii?Q?Dv2slJIKdg4bYOl8OM7d10hBHRpK0ErMAWlFZtya+7r0+onFYVyixa9vJwzg?= =?us-ascii?Q?nTzVKyxz1RXmub05bBRN5NUX2yAEiE1PdojSsr1s8WUmjrv4r1FsZnFZC+yc?= =?us-ascii?Q?wL6Jy31bN3icTkOS1Szs8p9ildWhJQtMoSZ2xgEz7wyPMNzkM/yibKx/tFef?= =?us-ascii?Q?nZ1ZeRqQm37geypqoSFXk6hL9kwuyd3EVICinh8//3QP9upu//4DphUITP+V?= =?us-ascii?Q?2rVLNXp51n2eMWbuEpNkn3KpNKuYh0WJsgBpM304ZEdB20p7iI4k6pZTvqtU?= =?us-ascii?Q?/sKTOTomxeU1ctQpuIEjk6Pop8dfoXB8wz9c1YBEQEuJJ8zEkoipqFq/amjy?= =?us-ascii?Q?IfeecHrKcfyr9CoGWpYaEc93Wmbo+QaHJ/ScUYkLg3IHCgQOrr/FmNU9LL75?= =?us-ascii?Q?GeSGfeRdt6zKwtGej8wM0FDGHX6L5SzHHr242qFsLP40YHq4QDXMRm8BxKAj?= =?us-ascii?Q?3dJrjjZAryxUNDkmFEwGxop5hlX/UGE5SAARTIjqGIQTtURK4JK000sf15of?= =?us-ascii?Q?3O2ubQNEo1FFlCvlA9Fn7FfbEPWMZ5BOCmg7Q99VpzyWdHs0WrpCX/3J7bSN?= =?us-ascii?Q?LfpZiqPs3EakvJYgIdUo22+EIjIEDQYo083ccvj3sp1tEpaSFbcl5aV1WwLV?= =?us-ascii?Q?3A8eKviRnBPgT/nfs5DUCAPugkF5+/YJ6feFF2BJzD2mnWXLHWZlab8yq1E9?= =?us-ascii?Q?cV0/Cror5E43K3OUudwRwUpHQDn7vhfEPOaaodoR8Z4Mw4S5q7d4KEyeqfvV?= =?us-ascii?Q?Gg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: cG+VzrE8rmnzSFGOatR8krpEdiKmqbAmFH3P0zJhhJRE1in9fvQEyShcj1Cm35vBJpMCJgCr6steww0VtKqrKOTyuagA5zbGo0Jnd8CpIv4cXUJk0jPTwzqbQBQ4hR5dU6aUGJuCTZCYJqYvszGAAlEZAN+eGUgOoZeoI6u2RPRS35OSsRUte337XNMXSKm0smEvdL8PilSyCERFx4oQFPM8mm/WQcSJSuDTFMw8W0XzYNR8FAzZ0k7aADU3nm7/C5j3aKroiG0DdzQCDLv51BWYGGCle9/gQqq3Nm4bfpyLmy/wbTuU+pR3GtBURWEqRKc5tyugQVYV6DMyVCRkh0xwQsNuSseh18oRVx5h6DNvTKFObb50lGs51Md/Dr7eGoZv9bGYMnOolBG2R2lLbpy8rO0D+wDu9J61RbdgM3BjItX2hftMRuW/9Z4PlhdvkXNx3zPlBfBzXX676BKc6+NK3l+btORNuIBKXS4oKCHjvpz6xGJLHUY275LSJI0nn/HTy+Eh3dh3Fb1yqAqALpgq+Idv/0YKsf6c0oKqpKHfb9jwHk+szo/5NbSgZ1uetyuF+QvU8qSQ78etLpqT1n1GWHhP1UtSS7a/KS4/rUA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2f429ddc-e135-49fc-f32d-08dc7eae10bc X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:25.1587 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ONOwvO6UYj5KLvpVf8pZ1FPCGHCKpjnoJZiDrkK32E6wf5QhhvsL1Ezj1SDTcaNicZdptNCXmFCapVJ2UMTkXnA2POQ4b/M7MmtFzOwcc80= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: sqQF8NwCgKKtjT8AtbbIFawalAkU6iL1 X-Proofpoint-ORIG-GUID: sqQF8NwCgKKtjT8AtbbIFawalAkU6iL1 Content-Type: text/plain; charset="utf-8" From: Sean Christopherson Move the declarations and inlined implementations of the preempt_model_*() helpers to preempt.h so that they can be referenced in spinlock.h without creating a potential circular dependency between spinlock.h and sched.h. No functional change intended. Signed-off-by: Sean Christopherson Reviewed-by: Ankur Arora --- include/linux/preempt.h | 41 +++++++++++++++++++++++++++++++++++++++++ include/linux/sched.h | 41 ----------------------------------------- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/include/linux/preempt.h b/include/linux/preempt.h index 7233e9cf1bab..ce76f1a45722 100644 --- a/include/linux/preempt.h +++ b/include/linux/preempt.h @@ -481,4 +481,45 @@ DEFINE_LOCK_GUARD_0(preempt, preempt_disable(), preemp= t_enable()) DEFINE_LOCK_GUARD_0(preempt_notrace, preempt_disable_notrace(), preempt_en= able_notrace()) DEFINE_LOCK_GUARD_0(migrate, migrate_disable(), migrate_enable()) =20 +#ifdef CONFIG_PREEMPT_DYNAMIC + +extern bool preempt_model_none(void); +extern bool preempt_model_voluntary(void); +extern bool preempt_model_full(void); + +#else + +static inline bool preempt_model_none(void) +{ + return IS_ENABLED(CONFIG_PREEMPT_NONE); +} +static inline bool preempt_model_voluntary(void) +{ + return IS_ENABLED(CONFIG_PREEMPT_VOLUNTARY); +} +static inline bool preempt_model_full(void) +{ + return IS_ENABLED(CONFIG_PREEMPT); +} + +#endif + +static inline bool preempt_model_rt(void) +{ + return IS_ENABLED(CONFIG_PREEMPT_RT); +} + +/* + * Does the preemption model allow non-cooperative preemption? + * + * For !CONFIG_PREEMPT_DYNAMIC kernels this is an exact match with + * CONFIG_PREEMPTION; for CONFIG_PREEMPT_DYNAMIC this doesn't work as the + * kernel is *built* with CONFIG_PREEMPTION=3Dy but may run with e.g. the + * PREEMPT_NONE model. + */ +static inline bool preempt_model_preemptible(void) +{ + return preempt_model_full() || preempt_model_rt(); +} + #endif /* __LINUX_PREEMPT_H */ diff --git a/include/linux/sched.h b/include/linux/sched.h index 3c2abbc587b4..73a3402843c6 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -2060,47 +2060,6 @@ extern int __cond_resched_rwlock_write(rwlock_t *loc= k); __cond_resched_rwlock_write(lock); \ }) =20 -#ifdef CONFIG_PREEMPT_DYNAMIC - -extern bool preempt_model_none(void); -extern bool preempt_model_voluntary(void); -extern bool preempt_model_full(void); - -#else - -static inline bool preempt_model_none(void) -{ - return IS_ENABLED(CONFIG_PREEMPT_NONE); -} -static inline bool preempt_model_voluntary(void) -{ - return IS_ENABLED(CONFIG_PREEMPT_VOLUNTARY); -} -static inline bool preempt_model_full(void) -{ - return IS_ENABLED(CONFIG_PREEMPT); -} - -#endif - -static inline bool preempt_model_rt(void) -{ - return IS_ENABLED(CONFIG_PREEMPT_RT); -} - -/* - * Does the preemption model allow non-cooperative preemption? - * - * For !CONFIG_PREEMPT_DYNAMIC kernels this is an exact match with - * CONFIG_PREEMPTION; for CONFIG_PREEMPT_DYNAMIC this doesn't work as the - * kernel is *built* with CONFIG_PREEMPTION=3Dy but may run with e.g. the - * PREEMPT_NONE model. - */ -static inline bool preempt_model_preemptible(void) -{ - return preempt_model_full() || preempt_model_rt(); -} - static __always_inline bool need_resched(void) { return unlikely(tif_need_resched()); --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 A601F79F6 for ; Tue, 28 May 2024 00:36:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856575; cv=fail; b=mn/73EBWV0qf6cUB0L7b2PC0chLG1tuay8OlkEpOjjgSh5i3gZNfPexyYCCeo4YKFLHdLiAh/h6FNiDQ5qijzXMBT8LZGeFxcHsD+MqJDezC33C87ScgA62TsrGNxDWvAR9qQ0ESBE+32SjPr3Gz5Hw5TFV/KDdU8Nmv4YDWsOc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856575; c=relaxed/simple; bh=9sT6hlOPeLqoYUCGS2ZHf/CceLjb4J+1LTvqsg3LV/E=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=SAHYWy0TBzRz+v3eM3YM9tVZrxGHbaxwU3w1v5f4UK8HN765lryafkVae5cUnS9UqR2FPyi0ftf5zPaLoqJQ48T/1DB238ZFDj++ysKxeeRBGZulSMnoVV/SJWBsygkyB/eATSe3wj4PNmm5jTTjc/zODYGeKXZijDx6XWMMxVE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RMdRVT011554; Tue, 28 May 2024 00:35:29 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DvLLA5TnVKvAlh0eTpK/3/0e4DuFBLYs4luBwnS2T3po=3D;_b?= =?UTF-8?Q?=3Dfvf+/zchnCJOf6zqZdTCzpjO5mILXFtx/PzjC48t9EHxkDBiESrvxNRZNp1T?= =?UTF-8?Q?T5z2ody3_NwMCl7at+IKJt7MH7af772pYQ32qLggkYn8A89APbfrba3JMQvS8Wn?= =?UTF-8?Q?fKZZ89jmLvjKNd_usX9/sXdobNbzxUc8bsvyDJtvnI9+vbI0Yjj2EIhp8Hl3k2j?= =?UTF-8?Q?Q2uS51HRKvLTVOYbZZlS_mFQoz6gy7ZzRurUhCGTggl9RJbkKDb1FLslBXAPe8n?= =?UTF-8?Q?OEp/iMt3OIIt697Qv+YLBhL0/e_FhqsTwbzcDrxnvygIJvfSo0J9FZCsIXqAFe6?= =?UTF-8?Q?j7o3F981MjsevuNXCNOJd5PgN7BIxh/k_xw=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8p7k5rs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:29 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RME2Oj016172; Tue, 28 May 2024 00:35:28 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtf67-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZvZ7r3NjLM7yAWnYam1NKRyIm3vIAUd3fy2lnZCPTQaxb7HQCbH+jhiOC5Zf0h349asa5AWfZIB4Lp/wOhIwd54pEbs8PKhSsmz3u/pdnwziM9gR4ycViEC2sk2a9q0y+7PxC1dvL2ra1ZL9Nn6DYlwNh+q9w7s+AbdaAzV13ymkylqd8xl5ZoksiMOMC/uzWl4QqOfc6vAzPDgIwJoyV/zNGIJxdRjIK132AC//RQ78ST3VZ+C7lL82mwI8UOQnKeXpkQ65jleM87iw0ERtSGCqT/eKkMAurxaZ2n4Z4TA6eFKaPvdjObNFZP6JSVEnc2wooD5cJsSj+1i6lrLIqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=vLLA5TnVKvAlh0eTpK/3/0e4DuFBLYs4luBwnS2T3po=; b=l2yEv4hszuRLZvn8QzTdZX5y6YlOD7ScMsL3aT3VTUFenuQJ16R1jKIeNyLrey0EjOQ558+ZQSXbe9FTdfPE0yLnw4IvsdFVwAaAERIum++KI1hS99p8Da4DX4lz8x2WxO8bgVHjd2YS/37v6YJEo8fRO1OBPRv0+2IiVb12mVd/vGxY9nAjePeXxXKUO2jYqmNlRA8FS1qfRmTMMxsjIr+MPhcAIzFQ50R/dqwiz3jeRKKkDWp+T3AWTkepOyHDqKf3AVhMRzch/vfF5kgYFrCJ7+e4kTIywvlf4VAtQUqIwEQoEte5lt/n7Jo0x2UtJP50l4YR/O5vs6Z4OafxzQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vLLA5TnVKvAlh0eTpK/3/0e4DuFBLYs4luBwnS2T3po=; b=wbhWayrCfRIsU6sNvF6B7FntO02MnxcyOuwZcLS53RbLA8W2vV+21YiRzfMWEsBfUr+huVggt5yZ4uhpLJn893ERH5L8CBlDnrqGgMolqp7Kg4PgmD3xa7EtgAz6fPRd+KYwLcDDZjTesLFZr9PVaoylta1Fh8Tn6pHIOKOKa/c= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:27 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:27 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Sean Christopherson , Valentin Schneider , Marco Elver , Frederic Weisbecker , David Matlack , Friedrich Weber , Ankur Arora , Chen Yu Subject: [PATCH v2 02/35] sched/core: Drop spinlocks on contention iff kernel is preemptible Date: Mon, 27 May 2024 17:34:48 -0700 Message-Id: <20240528003521.979836-3-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P220CA0003.NAMP220.PROD.OUTLOOK.COM (2603:10b6:303:115::8) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 5abee5c5-d978-44a3-0f7e-08dc7eae11d9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?jPfxrluc8nQWQpzSBWHIQs+XyaaKVXpIuDLyhs4bjMDE+V9uewq8TZW6dh7l?= =?us-ascii?Q?M3/fSh3Z1NdeyjQkJRLc1Oznyu45A7EodkDjbj7AgvIWyA0jfr3sF4fWoV+D?= =?us-ascii?Q?SMs3OdtG4JIAauqmrLdQgzekASvWaefmaE/I/7i3hdRcjV7N4ti6nkYzKza1?= =?us-ascii?Q?RY5UNi0wBwbF74p/9zpv7tD6dHn5Ufg9tpzKZfpTsl7g9nlob7AyCL3qRcSd?= =?us-ascii?Q?2m/foiLcIpCnT2ZEiou5703YkaYh5vIv75Gb2K/q+p6LimFFIQ8vWFfC81NM?= =?us-ascii?Q?ZU9VXFDGNO+MNbg/TcqmdSc9K7n6+aUR2y2AhmlBqc/8PaR1uNiXB1mL8TWI?= =?us-ascii?Q?aiSUf6pN32QNuISW03qocEtRpZU6wmsIAS0Un3iP5Ja8nC898CyjrecmjWoo?= =?us-ascii?Q?+TTOX9nHwiZsE7WCz7TdKUC57yev6b5BeAE5Ks0ymyKzC257jApEVr8Obhod?= =?us-ascii?Q?HzFnM/hHhq/uSAp7FMQKLZ0zlDLilK5vdRUMPNWXzWK5spUKpP8J1e3SB70c?= =?us-ascii?Q?BNJ0cA+5bhy0CLpc4wjS1vX2CK//oKRXxMSZN3n5OqyI9Xj1Cx0wwdweAMfp?= =?us-ascii?Q?gPZ7kWhJQ2pNYDgmtloEvEOPi1LjFyOlu4jhviJg7705kA+4GBPQcyitrMkd?= =?us-ascii?Q?2BRPpjN46EG5Tu/QkDRqAzWz8cdfepnYekh6iAYxTco0EaQmTVypOujCVe46?= =?us-ascii?Q?iESKuf0gtyetEyziTYHOK6ixMOCehUwMbk8v4nlwOy/96qHqV4uAGwULisgA?= =?us-ascii?Q?21vqkKZnj8Paf8HBwiCpuJ8d8AyonJ9puC/glivRdiJQVIbtuzfIhLrB7DfJ?= =?us-ascii?Q?N9kXDLoByiRMNhzOy/M6lVhnsYAeGtJTsHApRc44SSdZrvUAqnpDwDwedZ0E?= =?us-ascii?Q?hiB3l2iA4sfbpBzy54QOlikqN277KzEee1f70iMHKqCWypqPc2caRpi3LbT2?= =?us-ascii?Q?F22B5yX6gUSQBSGOcyr3f7KeTZFbbmQJWxfXqdxuJzDFBMKfq55kvvBA7raQ?= =?us-ascii?Q?O4LMdtZRBSBU7lY9mK0JB81U5RGwK/b1W4bf9U8Udp0Qq57vWJc00/hm1pjX?= =?us-ascii?Q?LTj3bmBKkJVkB2+5rDiJjJfP6FMllZBSx4R5Khy9ARbCsr/pIU0Zj1YcMGd4?= =?us-ascii?Q?27FCP0KLRQGxc9FAJ79dZlrbJpee5ZYxfCqf61OwRi/7/yAP//eqB2DMqwEo?= =?us-ascii?Q?N0FipenD7/8qzJR2+A5Essy2Dj1tLM8QflDZIRi74LDpQYGeDwugH0JB7mo?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?5Ao4JeuVZSr1MxF15q1Ol3quj/oh4wOtYJwAaPDtGjduLifPfckPX6YYJcnA?= =?us-ascii?Q?ZqX9vNqeofZKFFCnvGqB0Ziost8HRPxnWHehlru3LvVlN0DK5yGTL3y7JJXX?= =?us-ascii?Q?ohHNfbhrj3l0E/aaiYgH7Xe5r0Oartg/+KnlS0tnjqkA4xw6aJY/l4+knrcY?= =?us-ascii?Q?a6fwi1Le0pl5KLBvzjPea5SX1LPnkxeEkcOLAVGW/wk90yC5EKey79x0sUhz?= =?us-ascii?Q?4HqCMJKl1c7jBZJb3c9pKNp4Ga6sNP2BvWI6wsT8IAG6Ag4YVoKn0x+SQzzo?= =?us-ascii?Q?K30KzBqzsO58y+lKOfn6eghbELZb38MOT5RLdoiXxwZ0MUBCSxO8vqDHjNIT?= =?us-ascii?Q?FMU7NLhR43bpyYKxj0ag0tpjjge1Im0m4A67ONFOyj+kgqMfsBNKs83z6T3a?= =?us-ascii?Q?Dr9QDYb7zTKBL8sy0aTFQ18UBKqXqsWHXMqfjJCjo0Ybwjt0m4zA+Q4xQBAs?= =?us-ascii?Q?rS0UKoNpCyPMlH8dpV4OzsCVBNvQJcp3NoQ8o1lWX8V/A02G5/UxCbEzqTSQ?= =?us-ascii?Q?7y0S9IlNOnJs5td9CsyNmaIWjDRfS6yJxYj72nUZxtP2e+0VFZj5d5Y+IVt9?= =?us-ascii?Q?j2nq0pr6+hjyzq8g5pxVuIwyVPqWd35cxV2xp0oBchFGa5kPElTqarZ+owoi?= =?us-ascii?Q?JAjGp72CWtgBCV9SDVPIM20T+HJ82jBC6eZI/llXnMBoqYwNgVFdMme1C5DP?= =?us-ascii?Q?qe2z6lNmMbE8/rssTf0ko7MRsZE/I2v2Qu7gUMAZV10CRUYfaj7Zk+dQ1yTs?= =?us-ascii?Q?C6zA0xPWMGepk/WPL5AXi7fAbE/L0D6o627fyyAxC8CsJKmJe7qgdB3ivhn5?= =?us-ascii?Q?kTxdABSujVDaed3J4mt2lJpRABBP9yiLdPDZu5t9eju1XCQiZgmoGL8GpbeJ?= =?us-ascii?Q?ovm9ZDYHJ84CjmhCsBMU32E+Y+6aC7J7eauVqOxCfUhW9JC/ZHf2uSy0yHsW?= =?us-ascii?Q?2fnZk+wCpnx169XJE9qTjXR8rCh8mo9fTJ4EApcYo6k6tjwpDCHMYPbqIVkg?= =?us-ascii?Q?QRrsxVUirW8Gc2TmZTatw4laqSdAI5ItODEBeV4xgm7Fa7MRJ40ELoYXudvV?= =?us-ascii?Q?PrydSms/IAuoZpeZfjaza5mhX5sYWg6VQbjaZ8Xo5tdc5WSJByMyTBvCDOqv?= =?us-ascii?Q?VuAl6F5gAGWHa2DbZYVyjy3PqjGO8ZbrL44fDoiyX87qZteMw1MuU8MTh+U8?= =?us-ascii?Q?Pw06urc9sC1+yfpbAVYkg2ECMJX55dPCg4+AHH9soJgt5vjKumW0cVLkA8R7?= =?us-ascii?Q?3yZ9A3YLSvFGKtMmVxT2m7baGGFM9sh/UDfITrrXVTE4SvEzF1eO0wvqP6qX?= =?us-ascii?Q?BPoU9pNkR4mS48mT+jBCN0bC66cvfBJYXCbP3CGMnxla+1l/sv3hO0h5Fvpb?= =?us-ascii?Q?oWHTsJbYpvhZu4N/sdTWmUUiZ1lz54knW4Feqe3YGamBN1wBmQgckykE9SIt?= =?us-ascii?Q?WtRWqgZiEbJ35AVKYiDRAYP8bAIxM0r55VJob1abnb0GCTMJE3qnT1eztCRS?= =?us-ascii?Q?AX1RXMm2SdvjeLrIOGQ/c/pHuYCanALOvaNabZ73FqUMmBGu8RcYjoPP7ImI?= =?us-ascii?Q?DwPcf7dIf28PheqJ/s06EXWiKo3bV6sHH8BXDFKmJg4g2ndkiXyBOHkN/dPG?= =?us-ascii?Q?hg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Qo0ZvKPTdVIvbtmuZY893lnQPS5KCBBjykVY4TYIAX1rPje0wAybnEKrYToB/2E0PlL6E3sq9vdAvszlmXkmLX/n+vVGdbFpbNwkbWfNNpwJDPyzMCvvatErGM/jJAXQUK6LPAydzIPW3HnaGL49NYuShU4FFhDLcgb2U88R07F+tJI25LX2nVusrt4z5JwgP9R82W/KXvl4OvGhyZ3efx0D1Tri9/jh44JK6CUrZAbwrKJGQl9ncL3u/HXba2UOWpiWICVtxZsWvQtSAzQE9m9hUUpCHEa/zZLSfAk6oP1P7PCn7uJzUkE13HRknV6FAOgR1NLqqFZb0cq/Hp11NYpr2ohiqMO40xPmYhOMgdWT8oq0EggVHCf9K0UJ/OGtY01vS6qnQ8yrFrLwLFjGS2jn0gAVPhejKbulqqrnk9EGinHyByhrLpQ5R7YCZdMvEI70NUq9VbYqByxYwukjqbN6a7cXMuIh+Z2syaSwJ5GQEf4+nXZaaKb6mE8YyI51IF186IuaZOfzxV8+0+50opKNbfTS+p0jMLedgs6Va2SIU4ge0yULTPL8rD0ZBARRBur3NzKTren0kUCd4A+xotRHCObPp96ZwSWcwFQ+iCc= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5abee5c5-d978-44a3-0f7e-08dc7eae11d9 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:27.0077 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cRohRK8BnUrPloW9+dQBv0KC0HDz/cX246B3omJ37Co7AxiB2ZsoF5uLCGbFJ/kYDDWRoN1hDvXtjWQqP3St/sdoRDWzol2zbX/DyB2Z9OA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: 6rVpZOB8Yv1Q1Xth72GpDGMfuBcFBY7d X-Proofpoint-GUID: 6rVpZOB8Yv1Q1Xth72GpDGMfuBcFBY7d Content-Type: text/plain; charset="utf-8" From: Sean Christopherson Use preempt_model_preemptible() to detect a preemptible kernel when deciding whether or not to reschedule in order to drop a contended spinlock or rwlock. Because PREEMPT_DYNAMIC selects PREEMPTION, kernels built with PREEMPT_DYNAMIC=3Dy will yield contended locks even if the live preemption model is "none" or "voluntary". In short, make kernels with dynamically selected models behave the same as kernels with statically selected models. Somewhat counter-intuitively, NOT yielding a lock can provide better latency for the relevant tasks/processes. E.g. KVM x86's mmu_lock, a rwlock, is often contended between an invalidation event (takes mmu_lock for write) and a vCPU servicing a guest page fault (takes mmu_lock for read). For _some_ setups, letting the invalidation task complete even if there is mmu_lock contention provides lower latency for *all* tasks, i.e. the invalidation completes sooner *and* the vCPU services the guest page fault sooner. But even KVM's mmu_lock behavior isn't uniform, e.g. the "best" behavior can vary depending on the host VMM, the guest workload, the number of vCPUs, the number of pCPUs in the host, why there is lock contention, etc. In other words, simply deleting the CONFIG_PREEMPTION guard (or doing the opposite and removing contention yielding entirely) needs to come with a big pile of data proving that changing the status quo is a net positive. Opportunistically document this side effect of preempt=3Dfull, as yielding contended spinlocks can have significant, user-visible impact. Fixes: c597bfddc9e9 ("sched: Provide Kconfig support for default dynamic pr= eempt mode") Link: https://lore.kernel.org/kvm/ef81ff36-64bb-4cfe-ae9b-e3acf47bff24@prox= mox.com Cc: Valentin Schneider Cc: "Peter Zijlstra (Intel)" Cc: Marco Elver Cc: Frederic Weisbecker Cc: David Matlack Cc: Friedrich Weber Cc: Ankur Arora Cc: Thomas Gleixner Signed-off-by: Sean Christopherson Reviewed-by: Ankur Arora Reviewed-by: Chen Yu --- Documentation/admin-guide/kernel-parameters.txt | 4 +++- include/linux/spinlock.h | 14 ++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentatio= n/admin-guide/kernel-parameters.txt index 396137ee018d..2d693300ab57 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -4722,7 +4722,9 @@ none - Limited to cond_resched() calls voluntary - Limited to cond_resched() and might_sleep() calls full - Any section that isn't explicitly preempt disabled - can be preempted anytime. + can be preempted anytime. Tasks will also yield + contended spinlocks (if the critical section isn't + explicitly preempt disabled beyond the lock itself). =20 print-fatal-signals=3D [KNL] debug: print fatal signals diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h index 3fcd20de6ca8..63dd8cf3c3c2 100644 --- a/include/linux/spinlock.h +++ b/include/linux/spinlock.h @@ -462,11 +462,10 @@ static __always_inline int spin_is_contended(spinlock= _t *lock) */ static inline int spin_needbreak(spinlock_t *lock) { -#ifdef CONFIG_PREEMPTION + if (!preempt_model_preemptible()) + return 0; + return spin_is_contended(lock); -#else - return 0; -#endif } =20 /* @@ -479,11 +478,10 @@ static inline int spin_needbreak(spinlock_t *lock) */ static inline int rwlock_needbreak(rwlock_t *lock) { -#ifdef CONFIG_PREEMPTION + if (!preempt_model_preemptible()) + return 0; + return rwlock_is_contended(lock); -#else - return 0; -#endif } =20 /* --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 937BB8BE5 for ; Tue, 28 May 2024 00:36:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856565; cv=fail; b=H5E75fBVWRbC8A9KoOIog9O7N4t1P1GVViMs4vCFn4eeTVe+bnmydQajTFIGsuET1lKC3Ee+5BAd+mq4kKVjCOxz0k7yTVnqCFdGZKtrJGbrSi6EJBXy0VvlKsUHSLSfHkSkaUdsAZCEEUHAbwFwQNy+4y/A+xQb61LjkPe07xQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856565; c=relaxed/simple; bh=5pwWADmcXuB/Q43iIB5mDD6ECsi2gDN5xGgxgdXErmE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=Myo7cQcy2dEJ0C69fYzad+Q4fRcq9sNJ15I5hDA9pA2HF6+EKQiPECdiJ9anH35QDXVEuWkXSQk5QqJK+46Q6Wwl4BLp7sr/CIhY7QZUVZTE8EjQpsbAIGQD2BghN+vkFbLFGtT2z6hEmCqtnFYdM6gX+1+vbcXF/sUQFkfWQKU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI41Y025151; Tue, 28 May 2024 00:35:39 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3Doh8+0pNsBYMSdecJVTsGQKkjpyuMNwOgO08jdsDBFL8=3D;_b?= =?UTF-8?Q?=3DIH4xWbs0pbGIpjpeDaaS9gsQQjyy54TOT2o80RA9IS21XhilZQ02nsNTZ9ti?= =?UTF-8?Q?i/Ws/jUb_Py8UrRZVfmg2Jsj4kS/vR+3NKg4JMiPxym5PAddTlgyKc41PuIZFNX?= =?UTF-8?Q?p+oFc25AFaPcxh_THuIDzupq9Js9HwY4fXG8rubk35ORyT7ysPoT1Adkb6ZFsOC?= =?UTF-8?Q?qjOLMVgG0pZgHBc9ZyPM_6z3saz/Saio0QNB15fxHinqtCxKQGYu/bWONM05OUW?= =?UTF-8?Q?EUE2wp8SsffsIkXNhUg++QTl+J_LtETCszEhUJfgvHNezGVmJmLQNhaLNUhp0LN?= =?UTF-8?Q?YBP3VSYhIumzcDNxYIe6h/5uYxFuWgsF_gQ=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39aj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:38 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKwWGQ025813; Tue, 28 May 2024 00:35:38 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7x23-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fmvpw2KxJEkXvuwlg+kwL16iwo4+NrSLGjaKOhJxf/GWP8w4Ncm5dvdfJAwzsBPiq3O/tK9qMNpaFc5M9d+t2sx1LmIvj06SDI0XBLe8rWmS8CbjR5RP4zGhdzBfuAe23MydOiLf7MhjdgUE7T1/JaSylEwaAZmn8bz5c1soqMkjxIyXorGy15e0ioYORo1Rru/2Qt9pODusu9yF5ZQzzZvR3eVsrs/X8oYW9l1pmw80j5V8FRY7jda9zwzojcB3KOPCNAaikVHLMklUebQpi2/02sW9dEYP1Q4PRHBIu6qM+jU3ZjqPrE5YyLrqMSGfau6VnldoQAmcSTmhjzlKvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oh8+0pNsBYMSdecJVTsGQKkjpyuMNwOgO08jdsDBFL8=; b=CP7rJnxS89TytOLMNmIWoSvE6uEBSDn3Ierp+TpR57l65+gT9MxfXWPK+cd/QHS2IO/paJhcaBDaO+cD/jM0kJIAeWUiaFXqne7UiSdNPa2q3JoyRYMokPsK4fiB7l4cNbkv+NjGCs+QsBe2r1AaoB3rGylREB7p9f6sVFot2U+oS9UCAFpWMZWCatkReurV7TK6PC1OYk1TH6e1uEDKSfilQicRxX9i3s9XHjePDq66qsBCpsAFqAKG9VslcsseESHae12UPwNzfnGR9MNRSzkr1XtFtLpkvraIHr2FtYuvrkoeBD/KYEen8Ap4ByCqP3JR43WogP7WBYeFoKG8yw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oh8+0pNsBYMSdecJVTsGQKkjpyuMNwOgO08jdsDBFL8=; b=Uaq8wTvviy2n1jqeDSFunpahGvQSkuXK0CX1YJKgDBdU3YATDUks1jkvWJ0LIGBDysS/71Wl7IwRuS9AG5sV3ySIC2kztOPe7I+zvcucXFgu1QFPPM8e8X3N+CoESa1LYtAfgn89NUi7O8D5zyLxN1V8qkeB/X6Wo3/cT/t4zfs= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:35 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:35 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 03/35] sched: make test_*_tsk_thread_flag() return bool Date: Mon, 27 May 2024 17:34:49 -0700 Message-Id: <20240528003521.979836-4-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0317.namprd03.prod.outlook.com (2603:10b6:303:dd::22) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 3c5f899f-0336-47a0-f7ee-08dc7eae16d8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?BhPkCVw83zl7SuvMybj6WeIZrSfSmDDDgjrp2+PcUIUUC8+K2KXvBNOuX4j7?= =?us-ascii?Q?Mh/6p0/MbW3FsaBChCuVr9aFZ1ts+JdNijdbNbQRgs0/0SkFdP+MNLvfoddt?= =?us-ascii?Q?ElRSC+LX9Ztxy8sB2Mp73L4651ptpJWPflYbFECrQ8SwDTHRCdAy/jNW4Luh?= =?us-ascii?Q?xSNlw/QFOxz+7004PFELZbixmw77/WIH7lY3lW6JoRmxtmxxgCnyoxLdZTFt?= =?us-ascii?Q?8g/NaQE2bZJjbIL4uo9d0CRfSPCB8Dj/Ob50xo2AtVqZZg05IOClVku+QLI4?= =?us-ascii?Q?67RhGIfOAGd9vjKmUFxnbWAGDQpGeiRxunC2nzTroq1gjAcFLTyupkx9Cub8?= =?us-ascii?Q?VnKrt+EIaOA8u+8sk6ypKhGE1gGkVnROpfbxnF7PuafF2aEcbYTzhJowcpe6?= =?us-ascii?Q?wcUSzSopy0ZAgtX7reFcdpsssS2mUme4snKDBlWuLJhHJT2tQkl4suu3gauE?= =?us-ascii?Q?upqOXJ+/u9nQTL4HGZ7NzqOwvnz+nGuks5EXeFih+oHoIEPuV8ppTgJ6e9z0?= =?us-ascii?Q?5AvaQkhuN/5w/Ng1FbmAjuQozZyRoA6K7uJPoyQEsBMf4OWVFbFruTMD991K?= =?us-ascii?Q?im5G+pk7nqpwG6lwiFBDbc7jL556Q4v+oczzZS9mjZ6ORM6mVvBzcOHi8urP?= =?us-ascii?Q?tInFqukK2msSSB5tPy88aSejdfW0digOq2rHXwLAy6JgHD9E7qUcrZ83nDBV?= =?us-ascii?Q?7avtxIFhGQ/XyR8Xowa3AhiUrUTffCQPZwA9GChtQQyaQoyzvZWM91WJb0e+?= =?us-ascii?Q?n2redsGFf73Hqg3hdn6jpZp6Jji+f1u5I2XkWsit7q2AZjcdPmBeuq07zYmN?= =?us-ascii?Q?KFkhXwgeZooyM4eRbSbfDvNQVGpZ0AWSxcOQn6aJ+kewTDdIgCevPzZVyAyF?= =?us-ascii?Q?CxisFy4StdDYtnKp3/U9j+GGeL146Hv6kbmzj4ba6uIi/jHmE3cMEPcOt5HP?= =?us-ascii?Q?oZYlNeZmeP37SqRb0bWT1W5l/qriZKS8nyCrULa7o+f5oezQZic7jP8K9fy0?= =?us-ascii?Q?hzK1KzlwVftgSM8AScMOzrwQ0YlMYK9EigbFedT1Go4KW7ENdWbHmXR/mNf4?= =?us-ascii?Q?TTH8ySt7LhbSPQh2+nAIKF/tsIljAFHhaTefao3FbB2n4kLPyLQS6U+jrQQR?= =?us-ascii?Q?MDHxSoHARHER7OGmRPMtBfj+793+/NBuZIyEXpqRUijKUOJUc/LZbomOKkM/?= =?us-ascii?Q?BgoUXPUN4VcOyiVnTGPgnggoR/t83eLFqWGR/RKnUrNLBZQY0dB4e+mqzQM?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?KE/KRskRe4fFTuuCS4Uud12VQLJ7jUnGBxtVnhVDQKmba3hA1ySs5EwZOx6y?= =?us-ascii?Q?y7FVd2/AaMpaombaoRWEP2cmh1abS9ieeDnEKb+MgC4fE/0PGu+O4t0O4OCu?= =?us-ascii?Q?s/M3285mEYBLGwtPd2907WTEudPy7JCJKLi5XhCBuaWNYWSKyt3d+8vUO2kJ?= =?us-ascii?Q?UANZkryd/JKHI4VDhLbP8hYzuq+6RpY6M9JAcdaB3GJiepVQFYRDZQFRlynh?= =?us-ascii?Q?X0JiqXCRaBqMYH4n1aEeCmm9AkXMhHwS2qJ+HxDJegOD209q1YlwTN69LfOA?= =?us-ascii?Q?7iZuytnylsG4U+JWpr7B2GInV72R8cj2bvA+rLGD+yWjYyXbl03p8XLyPTec?= =?us-ascii?Q?lTg+o0DMjAbd76mlsBC1hlXJNXUq0IN5zJ7FjXJ6FYNYZ/KTxy3tdn00QL+b?= =?us-ascii?Q?4w00OcO3R7bBVQgCAKJPuOX9L8ex8Lo9JKohPoUDa7iW+iACZH2HWO3xZYPn?= =?us-ascii?Q?83lfzWe97ylqvfTYhdWor5qQ/qpnYhGA/IAeMSJe2FxOq4s7cCxBJ8H3lq5l?= =?us-ascii?Q?ZabAZRcUugvGENbVatfBuWLFMG/ho7vpSqvp9RXN7kCxiwBPLJ43WSFLYNeY?= =?us-ascii?Q?9JBCMbCA6atBBL2CZrnKn8Pz+Hr/c0CTZXe4SNJGSjlOUbaGvYEijoVjqbW9?= =?us-ascii?Q?VjHwltfp4qPN0ohCFoZS5Gbz5vN7HPHCZ9nC7ubkaNlM84mLIqg+n3tJoZ22?= =?us-ascii?Q?t79eFBxPDpKz65zfbRSyXR4MPW1Lvhx1hemFBPBsJb33N40EaWbzfPhyfX8R?= =?us-ascii?Q?u6HRxCEXxnqJIwcV7OgqB6nlFrY5mzcVXEaAXykl3a45XtGtxjMa0kIHDI2y?= =?us-ascii?Q?5F80wdCsZXwuDAZbCLTHlqzidWBoUsQVchJHI72vLfzdVBVVL6zv/xdlnvPW?= =?us-ascii?Q?OGiEzTeV90kPYXtO2l0BX5qoo/P2aUMC3Ht001Ba25kxI+ArOAIeVJjZT9rW?= =?us-ascii?Q?YaR+dI8qYXy5r1tfUcSb8K46zaVemPOEjOmFqs25AAJVVS7EW9xusA1DVH55?= =?us-ascii?Q?G+et3CRD43HBCJAO0AuGyX3eRPxE71KfGHeF62kPU7fi5pErDz+URYtvZint?= =?us-ascii?Q?e/K8DRWN4Wbvgj5mPpVf3RrJrUlC6Jg0Uw6sNOGGc91J5KgsxN5IVAPogqu4?= =?us-ascii?Q?DlX8IqRf7+Nd/uWFJOSgIytIjw+3a58CXXRylc5HZ/wIsEg8HFIzcSIPN4AV?= =?us-ascii?Q?4pPrZryDpfH/HbXpClIJg+JgI3G7aLtcD7YYcEcwKqKx82v0KHl0nB9toO/L?= =?us-ascii?Q?PvA/c/6Tvpcr3ytbW+BVfJVVsI3/L5nHquElrvodbgtxjgNea42oCWKXaVjk?= =?us-ascii?Q?47RI13ds1U8s5yHPCOk1J9/7IYmf4wmaa4kjIlDrC8XpqNtLjuGH8gMFvXla?= =?us-ascii?Q?i6kasI5TPhDnQmdIfnsBYDmOQtCP8F4ihrU9qj7CqwnLPkjHfJgNG/lmO4Cu?= =?us-ascii?Q?8t00yVqjweVunbTRZ5GWFR9C4y4rJ60xk6ZBlgPOrsVgii1adiETRxGD24qq?= =?us-ascii?Q?81hcnnOrPsFpYURAUXsxLfROSgECpb3nThYAHakcpuk0vZi2WFjgEDu2CMLR?= =?us-ascii?Q?lSFNQwXTZgTdwAoW6NSFD1pRvh3QkDhMiTuCpsUxOVm5ssPUOPb31e+hkGE8?= =?us-ascii?Q?/w=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wPcGx3WphRv5sS95XAGqRxx3/bq0/r3LzsIwwkLD1rJpo/BVimf3IF31xSgaDS2BF9QTBg6RjBmaue1OHogUVbFtFnnNDzlrS/VoEYIZTdXuY7Cab2XTNdvY1tHPE2FO37pCLvpAqYnrTwdZR2YsJymak4HiQzk4ozuU9VPDWPjbHc3K0OxMHkIPREnQBPu0muf5bD8w/0MJ3u5gWb8qnlHHloH9gofqwhk+lW1x+V6Oq+alK/EAE/YUVzAhRbLkBEYOKtcIIXGPJo87xm1v5Sg5CFGma3vac+tk4jiWAdsiCEOa+cK2yNOe72xGfHsZId9D4sWZ6Wq6HbVbJ111Xoyq+oWmh77Gb4IIwxRnyP+ynAPO1IKeF3RpPiCdjk6yeQh01tve0VfGW8VGAlknw+D+VbbJCS+gcmJVmWwDHcK3mWJGYJz5kAPyRkGuE7ua0uUarb6t+nahpMrIQsniQk2ry7PpaZtlQBZdeBeh3jCitVrUPnwzRVVCIBy8isu3Ck5jzcrT9ufu03ABF8u1wt2cNoAjF8dIxjkSHb9WRCQqqtQ8L0f+C7Tkxn6OxOsiZvFpx5wX27T9IF5Lx/+MmbPYpzXf/lHUqsmtjZEiiCg= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3c5f899f-0336-47a0-f7ee-08dc7eae16d8 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:35.7649 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mxG9fzBkrFtkfHrSTpnJB1/8C54J8OuUiTC3Su6bVG5h4xjv19fkgx7lV3xr6Jhz14geY+R+26Do5twzmNm8+6Pjmi5Xl35SRIkyXbCj+3A= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: 6kkzXL2AOwXXBCOOrklisDGk2QOS5_kG X-Proofpoint-ORIG-GUID: 6kkzXL2AOwXXBCOOrklisDGk2QOS5_kG Content-Type: text/plain; charset="utf-8" All users of test_*_tsk_thread_flag() treat the result as boolean. This is also true for the underlying test_and_*_bit() operations. Change the return type to bool. Cc: Peter Ziljstra Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora Acked-by: Mark Rutland --- include/linux/sched.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/linux/sched.h b/include/linux/sched.h index 73a3402843c6..4808e5dd4f69 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1937,17 +1937,17 @@ static inline void update_tsk_thread_flag(struct ta= sk_struct *tsk, int flag, update_ti_thread_flag(task_thread_info(tsk), flag, value); } =20 -static inline int test_and_set_tsk_thread_flag(struct task_struct *tsk, in= t flag) +static inline bool test_and_set_tsk_thread_flag(struct task_struct *tsk, i= nt flag) { return test_and_set_ti_thread_flag(task_thread_info(tsk), flag); } =20 -static inline int test_and_clear_tsk_thread_flag(struct task_struct *tsk, = int flag) +static inline bool test_and_clear_tsk_thread_flag(struct task_struct *tsk,= int flag) { return test_and_clear_ti_thread_flag(task_thread_info(tsk), flag); } =20 -static inline int test_tsk_thread_flag(struct task_struct *tsk, int flag) +static inline bool test_tsk_thread_flag(struct task_struct *tsk, int flag) { return test_ti_thread_flag(task_thread_info(tsk), flag); } @@ -1962,7 +1962,7 @@ static inline void clear_tsk_need_resched(struct task= _struct *tsk) clear_tsk_thread_flag(tsk,TIF_NEED_RESCHED); } =20 -static inline int test_tsk_need_resched(struct task_struct *tsk) +static inline bool test_tsk_need_resched(struct task_struct *tsk) { return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED)); } --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 A7C98B677 for ; Tue, 28 May 2024 00:36:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856566; cv=fail; b=b5g8Nf/53gpwMePVdShKPgisFa4xP8czMSea82xPpm7ZliaRi4fiQqddxyzyG3hw6G+3TGSNmmrEKXiuYLewppgYY+6oi9pWU9yhQgW1+zZRr7jutLVkKf+kVZadt/FuXtOcTHraSScTXU4Lz+9QrrPQVFFKXjf5sjY0mZ+ZkD4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856566; c=relaxed/simple; bh=snarRsXQS1FAPmvgdH09AD07uKuHTd85iIVioBJacBI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=efoTqA0W+shbQiCr6M6cwpBfaBHfb2vMhYRraXFfwLl+patjBLRwnE0g8WuXFjFXL7yvnU6TuHx5D/Kr5Zfwpe+Gxwi3M4XHiS0EQxPZ5c2mGX/VZroMhtQfnHFkKFjboxHH2dr0AMij1PKDiBMUb6DoiUxsFNr4VBPjptl5sxY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI41b025151; Tue, 28 May 2024 00:35:45 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DH6Mb6y2pMWkUal/7okOvDEZ8FCrKr1TLLm/tgE0Q9MI=3D;_b?= =?UTF-8?Q?=3DgmOLwkGT6MvQDaRLmteQKyJu18Y6iqzmUeQPs2mYUpTglMzf7eu+tQ8/cv9S?= =?UTF-8?Q?xJfCQKlx_RJLciUzeAyGRupf9HZIEIeMJlf/i9RYyNn1Ix9ckZwISvLYo0ikQts?= =?UTF-8?Q?660RwXy0J04pV1_uogp/TPlKbyUl+DZv+7PuTOtf8xr40fiZip2pInD7JwYKCfX?= =?UTF-8?Q?ckRvM8SS8C4sys7UKq2C_WNMyd91UNfsXgDhMfWTMu0/g42rbF7tkAdfc4AAzZy?= =?UTF-8?Q?5hw3mvLW9D4ivjUnd0QCz7bHrA_hBqkbBhJ/BFgjaoQ31t16Gvn8nrt5w7dkj/C?= =?UTF-8?Q?hKRX32+xxl2pAl1RAe06kWXZ3lXHmLeM_LQ=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39at-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:45 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNFf55016169; Tue, 28 May 2024 00:35:44 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2041.outbound.protection.outlook.com [104.47.51.41]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtfan-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OarwYiPO3SRPD40vn4JORN0VpOMKcmAVpNFbb08NFxTuDulGNbFhGyhu7La7SncM4byfmH+Cl198y9g4OHiSuW9+nyHEoAYm0TW+LtzcCkoNLwyyNhpSsaUzJnnURLQTf96/vk8tyOQyTLFmFda279vMAVfutwghuj1T4m2EEnE94KA/cljR3EIHnWA62GT5ROP9kMZFuDajY+0QFyj3rL4I4yE/lBIOJI/Qr2kK9RKTvEL/0DNuWS2eLa5G/Jog12QVi/jbKI/fqzsG1wDPx6Cv8Uq7d7vGQyoL5PUOYU4dcNKmh3C7oE06C+Jeezj1Y3ESgMtY8Wn7B9FAEVZBBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=H6Mb6y2pMWkUal/7okOvDEZ8FCrKr1TLLm/tgE0Q9MI=; b=YBr9lhnyYlAZtQL2JvsKXKg7j8pZZ82IP09xHkWl/+ucd2gYB7Gps7st2J42MAeuQu78TXfz/c0YP43OLtZ2k7rXpduc8EXovSmRiglehLz5DEGdvIEc8d8Wd0OK5PuAHyuOwE12oFblUE/tsS14d0NtdySKFcbWgh3XoCdePJMKB9HbIjDcZ/gQrrR5GzAhbYz0AuEtZXwM4bnu7Vj6jVfe1AzNP91xF+c9ICzyecgpDHK4nHwfgA1EuTsSZpo0bste3iRJPau1/TOHVXTETnpjS+lY+Vd7P+N5kN32klkZvVJK4k6mbrKJfBYKq21vYrDK3LtFeJEX/RRbsuQpaQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=H6Mb6y2pMWkUal/7okOvDEZ8FCrKr1TLLm/tgE0Q9MI=; b=QAPzUxeFU+a53T8uv7ZFfohhVg8CAZv6/MdQ+9xKv9ubkh8q8O8kbrRdcArWbnY5Cvyi5yAlNeAspEbMia1BegFLDnDtU79jEvq60d9uJa1/gmelbcOSOwsK6gR/JlVTOrKCra0Q5m8GDnmpcQXe+/rBZrQ3daTG7uX5A9sVxL0= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:41 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:41 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Jonathan Corbet Subject: [PATCH v2 04/35] preempt: introduce CONFIG_PREEMPT_AUTO Date: Mon, 27 May 2024 17:34:50 -0700 Message-Id: <20240528003521.979836-5-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0287.namprd03.prod.outlook.com (2603:10b6:303:b5::22) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: fa62f423-971a-4a3b-f7ff-08dc7eae1a29 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?QdfTF4cCXIPOmnSgGmcUKo0IoKoquGP0Hp6y+OuHh7+jxemrNT8ti0pWhFvu?= =?us-ascii?Q?raCaqjku3rkV7E/Lp4LegeCUVWMplSJkJKU0ogSaIRPbB7w9IN6jXqP8JvRA?= =?us-ascii?Q?RwXYZ4E5joZmG2F/+SDbGCdRiu7dPg502kJwCQBGZTEUNAzrSX6RDEr4fWYx?= =?us-ascii?Q?xKrDyv9WSmEIylaMjX8KXjWyfSK4aulDbK9nBhxvuItTyO8zJXNij1/Y2QwM?= =?us-ascii?Q?kKHQm6yXddME2ElbBDCxCcCwajB+DnuOnanMauxdKzRc+iuL10hP9D7S6Lgg?= =?us-ascii?Q?j+uS4f46rpwAZr1JUOhislYv2uHVlb4JiIiEqMUf5dZ8xogPsT7tHq3S5wL1?= =?us-ascii?Q?UdUqdN2oP52OvqSNnjrd5yJgxVOTsGH7p2ygAKzGDNNKS/xXMUyAGVhlj+mZ?= =?us-ascii?Q?UrJ26C+xrVfM5h9xehfhYw1RDENr1j1aRupCkiHL1g+u1nFAORcvcCGDA8vG?= =?us-ascii?Q?zPrl/cNJdsn9xTzhNN+9s1MRH42KSxk7w1zbvc4DSaiRbadEhlJKHKgo71is?= =?us-ascii?Q?Qbwv2RUV2/+3rCt52Dyhzdz2Hhf5egdt+7E88MQF1da7D5NIF/JwmN5QBuRR?= =?us-ascii?Q?GuYBKDFD8n9eRx8f08K4/3jMB1VPm3A+yc8iIfqmM7fOniTQk5kvkJquAWhd?= =?us-ascii?Q?/2yx7gViD7NBwCPkREA4p/M5f0Jqu8ZJ+SyrpFMz35Bn5eFt2wwVqTXx2uWa?= =?us-ascii?Q?vZ7GJUAeJAA8rOwYR6cvm6oxCmVMj9PlS+5J4goMYgpXeAzgg5mYTgj8ZzMl?= =?us-ascii?Q?YsBAsA6HF8gYgguh2YrD30xSZF3CH1IhmSpdkUjKqOxbFpSrgDMUiPZZy4Fv?= =?us-ascii?Q?fQmX6eTudvtuzSMD3kzMLrCBOGwPCBCwwZdBlMWNnA/OuFe9BQ2fK2eSusbe?= =?us-ascii?Q?BhfoVQQNfAQIl6pXQV+lFivQbE2KjR/tZY6teepa6oTFzLzYAQ96zvDVYH/L?= =?us-ascii?Q?dbuyM/AyJZNnv9AjoJ5IYndveuGYNkCouj7HXMN01dhnVLR0QqzoLO/IcQ5B?= =?us-ascii?Q?bu3jKsHNMt98NE/2fH3bE5pgDzzPURf87cSJXVInSGIASn2YvGbfcOECuvXf?= =?us-ascii?Q?Jlc8sVfHWZILkH9mDohwcXMUDqnJkjzJkSkBV1TiBPMcnhZzqeap8pkjuu7d?= =?us-ascii?Q?4ulqtVSwavYTWGl4N+Nj4/mYEZH3LnYNcuBAe/MPEGoQAyRABhIEZROKh6vW?= =?us-ascii?Q?T7oysUK5waKXjPFMb88tv4anZelpFAzPpZVosA=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?tc9nBio8pm5K9oKsW/ZkWrGQL7+oaiFx8uXbEYW7ZSrK+Bu9s9/ik9cWC5Fk?= =?us-ascii?Q?7BTWRPdF7VrPdvHjZChfZHfHWOKhUFcMaDN5HjuqWJPtvsxRduPgOkUkIo7Q?= =?us-ascii?Q?hla0+1qhVxPPUOjndpus/Mqr5HLJX35tg3JFVbFeKmaV0+0dxvAVW/O0jSbU?= =?us-ascii?Q?x8nqBVbkNM5aXLskiDNQzAYuejk1zhCxvoqQ7xutH8QqKC1WDjkRc2r8ZkZz?= =?us-ascii?Q?f8D6IMAAqh/2WTyDhbrdATab10/M6q4W6Cph6IpU+7eIAmbrdtpU0D4wnzhC?= =?us-ascii?Q?wau9Zbz+uWxDgK7ULHQRhrFDKwco8AWmD8oxrU+vb6nzhOuvTd7uNK2tqZ/5?= =?us-ascii?Q?pjsPxNAUA9Xeki3kTDIbyhtZgswSUBewDw16T39HliR9uIplqf3SK3q6NC8i?= =?us-ascii?Q?dhWEzZis2qBBEWFFQiL5/kYSuqLrapE/Uv1evZ37OpJxxntJoC0tKU4QVcv1?= =?us-ascii?Q?eLbLeEQwuuKC03TO9XSvyh42o7nKLchewm94eInaSeD5W4HCXhi0DaYdZ1SU?= =?us-ascii?Q?l1374bBYQ5OwmpQocmccgnqygla9U5146abtShWRy2XxlYJJtFJot4itO0XB?= =?us-ascii?Q?xTnWWwMLdKEz9jkuo+2Lacly85/EZEkAzJoQEeZUXQ/wvR1F/EwJ/OGRevCD?= =?us-ascii?Q?Npeak1s58Pr1h2suJfeZOkOW9ZreDTQgyD9wDCZ7wl5182Xe1Bd356yoHRdY?= =?us-ascii?Q?EoxEDFvYuM7XmAyStA1RQFO9q7JMjos0dE8/QRMY/ebTh3AvWoQkm1gVa86f?= =?us-ascii?Q?R1M4aURXZsE8kp5GFpH/tmktIpQgZ7apH/HrKJPllEeZ8jQMFla24rkqzOTp?= =?us-ascii?Q?fcO8F6lkJ6xVGuL/KabEhXAg+yBCSDKhgExoT2USbLikA/gpIeufzyZPlCjB?= =?us-ascii?Q?FUZbZS1mlLzQzIo8YuHgahbWqSpi/fVxiTe95wLjGpk3UosLE4TUs3kHX8fp?= =?us-ascii?Q?ZvjCtVLHq+87psvQWU+h7xLzFqQDkJsDgOrnhaRV0K1hjNYJAns+eeDK7h03?= =?us-ascii?Q?wzdGkJ8+kXaurllqWkyfqF0O9v1uyRaxdiPApLvZhMZUoHdGXOqOfQ/2kcyt?= =?us-ascii?Q?QMljzaWD6mzqdgjBtKkAg7XdKA3uOWL4iZsamhDhpUmwiRj4TNnNgN5Ykknn?= =?us-ascii?Q?ozmsgR58BhrNIRxd57q+awKaq0rdwyaJlXCrq5FZhzUi+wwc1MHpdQjTUdY3?= =?us-ascii?Q?SoCD3RCBl4iIbJWisHwWnCvdPUJz9073+SvOsZXZ3Iy5u9vH8foIR3kIqijn?= =?us-ascii?Q?XUM/GxPhlWqL0ojuxlEyl/wL/w66RM8+HLWn7rAhQmsZjIgf1GhVbVSffcUA?= =?us-ascii?Q?/7K2o90a0KrQyRW5cogGPwqcjPwuoV3RDtYrzBxPjNCtBbF8c+9BS5ouwdap?= =?us-ascii?Q?qdpstzcDT5WZDrOMheS1aIsfx95kZyDiKUQylby3AknWMrSMGqXaO8uze9lK?= =?us-ascii?Q?H79Ssb/KhDnmZ3WoD5lnTlpeSk63xPAnCEjQKmWfgQ4Q5j9xqDjdA71pYTkg?= =?us-ascii?Q?kqaZP7RFRqamTF5Orn/JlANU7ytQ/JA0+6MYphjV/wYxwL28uDHfc63G7egp?= =?us-ascii?Q?+Y0edn7/UKZGd53isclRZpSFykPQ8CR1iXfem58kaNLXJC55eGzD9T/DAk09?= =?us-ascii?Q?fg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ZMqdVvejaO5kym75SR7YL2iVqdHxLzyMamumcZH40EzLrUqkAkDYhpHlcc3mHVPuC1mQjO2d6Jt6tcXRtygU0dUiC64N1PkWk4DDjqXTv2XsTDeuNnEYgvCKxYqxJbw6qpYhYUNvNdFb1FZhnSgwbS2vC3e84eTftGivQ0EkZj4aFuxcmL974PkgCSZ0pqRpoAavUmY+ynXaEQosySrxV6wx2/Oz4itehValrLzwFyXPaIGGmCSCdgISwlMoH3JbVcaoLv6DjE11kdeefH8NkVP8Rjg+g5npojVbmIU/0AOEmtelZ+1p9T8p4XwIq61Hak9ARW2WR3cotQfYajU70rIhbdhvOfqc4GXE0ElzQ5Mr3iTFmio5ehT0cN2jZEXxoSYZTZY9s7qoYcnWhTXv26iMOEmlsb/qOkV4PnSllyMAfi/y9ru1js2m6RJ56K6lk8opdgsYfALaTlj+tDXEU5KxduLTHxIgqRpDTS1zFwKUPhjqH2IV2Fe2DzJbJaMqkO6/1u6X6z3FjWi1kb7FHc4PywKgB+8+hOjzlTRGJW4FAwctr1OO5OYN/Ts7yZJlDMlX6BK0DQ1s+XiBLtmKCvFqB7iTKCKFfvfPl/pi0BQ= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: fa62f423-971a-4a3b-f7ff-08dc7eae1a29 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:41.1796 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NKgHd6mIl7c5AUWYJDAmw0K5XUEPo89DJ+TgGOpzAwz4Az6cfIK4lV2OP12BdehbUKEdXXweu6UAdqL8AVtWOaBGKQHqxyIx3ElHc3LfjVM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: Lpjw5r8VutAW0AgLxThqcJb6wcpFCC8d X-Proofpoint-ORIG-GUID: Lpjw5r8VutAW0AgLxThqcJb6wcpFCC8d Content-Type: text/plain; charset="utf-8" PREEMPT_AUTO adds a new scheduling model which, like PREEMPT_DYNAMIC, allows dynamic switching between a none/voluntary/full preemption model. However, unlike PREEMPT_DYNAMIC, it doesn't use explicit preemption points for the voluntary models. It works by depending on CONFIG_PREEMPTION (and thus PREEMPT_COUNT), allowing the scheduler to always know when it is safe to preempt for all three preemption models. In addition, it uses an additional need-resched bit (TIF_NEED_RESCHED_LAZY) which, with TIF_NEED_RESCHED allows the scheduler to express two kinds of rescheduling intent: schedule at the earliest opportunity (the usual TIF_NEED_RESCHED semantics), or express a need for rescheduling while allowing the task on the runqueue to run to timeslice completion (TIF_NEED_RESCHED_LAZY). The scheduler chooses the specific need-resched flag based on the preemption model: TIF_NEED_RESCHED TIF_NEED_RESCHED_LAZY none never always [*] voluntary higher sched class other tasks [*] full always never [*] when preempting idle, or for kernel tasks that are 'urgent' in some way (ex. resched_cpu() used as an RCU hammer), we use TIF_NEED_RESCHED. The other part is when preemption happens -- or, when are the need-resched flags checked: exit-to-user ret-to-kernel preempt_count() NEED_RESCHED_LAZY Y N N NEED_RESCHED Y Y Y Exposed under CONFIG_EXPERT for now. Cc: Peter Ziljstra Cc: Jonathan Corbet Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- .../admin-guide/kernel-parameters.txt | 1 + include/linux/thread_info.h | 12 ++++++ init/Makefile | 1 + kernel/Kconfig.preempt | 37 +++++++++++++++++-- 4 files changed, 48 insertions(+), 3 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentatio= n/admin-guide/kernel-parameters.txt index 2d693300ab57..16a91090d167 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -4719,6 +4719,7 @@ =20 preempt=3D [KNL] Select preemption mode if you have CONFIG_PREEMPT_DYNAMIC + or CONFIG_PREEMPT_AUTO. none - Limited to cond_resched() calls voluntary - Limited to cond_resched() and might_sleep() calls full - Any section that isn't explicitly preempt disabled diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h index 9ea0b28068f4..06e13e7acbe2 100644 --- a/include/linux/thread_info.h +++ b/include/linux/thread_info.h @@ -59,6 +59,18 @@ enum syscall_work_bit { =20 #include =20 +/* + * Fall back to the default need-resched flag when an architecture does not + * define TIF_NEED_RESCHED_LAZY. + * + * Note: with !PREEMPT_AUTO, code should not be setting TIF_NEED_RESCHED_L= AZY + * anywhere. Define this here because we will explicitly test for this bit. + */ +#ifndef TIF_NEED_RESCHED_LAZY +#define TIF_NEED_RESCHED_LAZY TIF_NEED_RESCHED +#define _TIF_NEED_RESCHED_LAZY _TIF_NEED_RESCHED +#endif + #ifdef __KERNEL__ =20 #ifndef arch_set_restart_data diff --git a/init/Makefile b/init/Makefile index cbac576c57d6..da1dba3116dc 100644 --- a/init/Makefile +++ b/init/Makefile @@ -27,6 +27,7 @@ smp-flag-$(CONFIG_SMP) :=3D SMP preempt-flag-$(CONFIG_PREEMPT_BUILD) :=3D PREEMPT preempt-flag-$(CONFIG_PREEMPT_DYNAMIC) :=3D PREEMPT_DYNAMIC preempt-flag-$(CONFIG_PREEMPT_RT) :=3D PREEMPT_RT +preempt-flag-$(CONFIG_PREEMPT_AUTO) :=3D PREEMPT_AUTO =20 build-version =3D $(or $(KBUILD_BUILD_VERSION), $(build-version-auto)) build-timestamp =3D $(or $(KBUILD_BUILD_TIMESTAMP), $(build-timestamp-auto= )) diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt index c2f1fd95a821..fe83040ad755 100644 --- a/kernel/Kconfig.preempt +++ b/kernel/Kconfig.preempt @@ -11,13 +11,17 @@ config PREEMPT_BUILD select PREEMPTION select UNINLINE_SPIN_UNLOCK if !ARCH_INLINE_SPIN_UNLOCK =20 +config HAVE_PREEMPT_AUTO + bool + choice prompt "Preemption Model" default PREEMPT_NONE =20 config PREEMPT_NONE bool "No Forced Preemption (Server)" - select PREEMPT_NONE_BUILD if !PREEMPT_DYNAMIC + select PREEMPT_NONE_BUILD if (!PREEMPT_DYNAMIC && !PREEMPT_AUTO) + help This is the traditional Linux preemption model, geared towards throughput. It will still provide good latencies most of the @@ -32,7 +36,7 @@ config PREEMPT_NONE config PREEMPT_VOLUNTARY bool "Voluntary Kernel Preemption (Desktop)" depends on !ARCH_NO_PREEMPT - select PREEMPT_VOLUNTARY_BUILD if !PREEMPT_DYNAMIC + select PREEMPT_VOLUNTARY_BUILD if (!PREEMPT_DYNAMIC && !PREEMPT_AUTO) help This option reduces the latency of the kernel by adding more "explicit preemption points" to the kernel code. These new @@ -95,7 +99,7 @@ config PREEMPTION =20 config PREEMPT_DYNAMIC bool "Preemption behaviour defined on boot" - depends on HAVE_PREEMPT_DYNAMIC && !PREEMPT_RT + depends on HAVE_PREEMPT_DYNAMIC && !PREEMPT_RT && !PREEMPT_AUTO select JUMP_LABEL if HAVE_PREEMPT_DYNAMIC_KEY select PREEMPT_BUILD default y if HAVE_PREEMPT_DYNAMIC_CALL @@ -115,6 +119,33 @@ config PREEMPT_DYNAMIC Interesting if you want the same pre-built kernel should be used for both Server and Desktop workloads. =20 +config PREEMPT_AUTO + bool "Scheduler controlled preemption model" + depends on EXPERT && HAVE_PREEMPT_AUTO && !ARCH_NO_PREEMPT + select PREEMPT_BUILD + help + This option allows to define the preemption model on the kernel + command line parameter and thus override the default preemption + model selected during compile time. + + However, note that the compile time choice of preemption model + might impact other kernel options like the specific RCU model. + + This feature makes the latency of the kernel configurable by + allowing the scheduler to choose when to preempt based on + the preemption policy in effect. It does this without needing + voluntary preemption points. + + With PREEMPT_NONE: the scheduler allows a task (executing in + user or kernel context) to run to completion, at least until + its current tick expires. + + With PREEMPT_VOLUNTARY: similar to PREEMPT_NONE, but the scheduler + will also preempt for higher priority class of processes but not + lower. + + With PREEMPT: the scheduler preempts at the earliest opportunity. + config SCHED_CORE bool "Core Scheduling for SMT" depends on SCHED_SMT --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 AC4558F48 for ; Tue, 28 May 2024 00:36:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856565; cv=fail; b=YgaX69dLeY2/1El+jyvsxPAId+VjH3nHP4q93NqYJ2ido+Xtj5QYPurC8/Pn0wMEOTSSO/SddVwRbW5XJc8rX2nFtbMxxzot2Jta+78PxMvyHvLFI59SEDee6lzyTo5SxGcWPIIjulqcbN6dfBSNr7f5Mr8zxQRWaADIHWWrBDU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856565; c=relaxed/simple; bh=8OE9K0DmTCAvJF/4RkpmXLEUXS6juMXHvI2cb+F40uw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=AyGsJEZ4loIrhr5ULogYeCl3rBwcwDDlADpEodG5OoY7GDexdPgeSVHRGW0o81G2j11oauwMEsthqOU+dAiZTx3uFolTE+jgW0o8uK5nG+1EeNwhb+GaE9ujc2Jd/5ax0dX6tviNPaS6Fdcew/ZZ6MH8e3jK7eg6zrun8bBe6Es= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNl01J022022; Tue, 28 May 2024 00:35:46 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DzAf+f1zKciofH/Sg6L+tAS+6whs23BpJstbD2khy6i8=3D;_b?= =?UTF-8?Q?=3Df0n8B01IMcHDpcftMZSx0DP2gfYB075IC7Y3ViRsZe72ovb4BxyJIM3MzaGT?= =?UTF-8?Q?wfuRdZn6_TfuDzRQrmiXw+jxMx+jjpEE22uk8vDpf+iKAPLPdjzEH5mCfXDAl59?= =?UTF-8?Q?l//Hdn/30Q7Sgn_i5fL73jraLt1snqoo2PSohZqpd9MFfmBuzTcCw/9eJkJnzxK?= =?UTF-8?Q?mA6Th5t7kv/zibI8H2WV_20A0osBCqxa4vRA+I6h399dW+ETK6cIEprJoEyhX9d?= =?UTF-8?Q?pnJK52QieOc91B+ukFDMJfP/sU_Z3FArwQu7hqXrH8s07COyzBCCJPyBWz70l2L?= =?UTF-8?Q?XbqKUYDuQlLfFdYFaXPHrxigBsawffk0_KA=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8j835q9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:46 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNFf56016169; Tue, 28 May 2024 00:35:45 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2041.outbound.protection.outlook.com [104.47.51.41]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtfan-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jTq7LCwbmJacgk1Q0UDnpWR5B2vhJKXN5cK2X2TlzJtyj9v/Dv7Pu2s6Za27uqIAQAxcNzfSguLLX+SwiYxvU6LHBMhw3kH63JltAsXQZNMp7k9KUAUr4etGoczo39uvEK5KgheqUPMI+CFOLnsyr8MxCCzwLPYv5IFrr3XCJj4xBHHNuIBRgfwNycviwL5CtWI3MMvIEJTjNbGdhWHcNOdQuCN6dRBCLjcug+WF4vFSJHezDi9bEMof9xV9BWTvO1v1M0PUhmtoKXMjEXxhThheLtbJdGCOfVX9IqktW0Aqkd7Y9Mv6OjPlVPxfrjV8qdialK0LE9yKBohQgZCtxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zAf+f1zKciofH/Sg6L+tAS+6whs23BpJstbD2khy6i8=; b=bTWG5nk09J6tiZY6/XSaHPpvKG8B39C1Dx7xWMVcFqbWksSRPlC7p3/XuSzbs+uSY4LmaEk8gQQqmotFfQCikqTw2nUvD4Ekai0ONI6cvROh8vrrYzzXaExPKTHPZgLYWZh98XW9UL28ZVCs9AXLdmioFsnDwBrHGUwHdrMIWGRctLz2Q8Zd5GVofEvyqqfzJINiRpz+b1x4wtEBOkfgf7TGYIIV/gwOnKF9CLXA/nnxOCuo3Emi+nktXOKP9f3c1csVEZ1Js6dzT4uliu9tba3AQH2gQ/fWYAUeiRpsAWHklksj0FbLx80klVAAjiNgkJu9dSRQ5XVFHAjLLN1Cag== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zAf+f1zKciofH/Sg6L+tAS+6whs23BpJstbD2khy6i8=; b=yoPHo74JUJv5wlwarDFIjM/GXxQ1pFqj+YUHdhtONilNJeh5Cxj5H+ROb52ZmG1Y4/ofEbjQ6iiS0UyT6sU1lLuHtTNt6Org4S9ksRktuqq+zlRspVekakeTAD8Ckulw6gjC8zxbe+W34NHFstmgxTWUUAC3p4si4SLe2cm7rLs= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:43 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:43 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 05/35] thread_info: selector for TIF_NEED_RESCHED[_LAZY] Date: Mon, 27 May 2024 17:34:51 -0700 Message-Id: <20240528003521.979836-6-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0154.namprd03.prod.outlook.com (2603:10b6:303:8d::9) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 63967a97-de86-402d-b81c-08dc7eae1b73 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?QZW/fIlc9mLzvI1jpgbVNcVpMC88i1sHMCwJYVExIctUpT9bt6rPuFUmHeBO?= =?us-ascii?Q?uEawu/zEywkdAkQ+0ktIwnDtCCIskkFtDYJz6LF2tKLu2jhhL1S4Wg3z3dmP?= =?us-ascii?Q?PjnBs4dFPMY4B2C+AnKx1RLLIxD5dbg51usR8PCvoLHlfMEpRfJ5bEN3R6vx?= =?us-ascii?Q?I0KTkbddM/1oiO8K38epCtNEDJIKORkKYoErfKZ6YGV/g03q6WdEdUPVqa7g?= =?us-ascii?Q?0CjtjupgSNyO3jpg2R9dvfbfZA9g0hanbmk4VnK7oQYxXPHBg32JafPtLC0F?= =?us-ascii?Q?V9EsWOtrwmcDRXg0j7C0XCD5jBR1PvplMAV/XVBBuYCESxNGisXRKJzUTsCY?= =?us-ascii?Q?Q/dBwxvqa96Kot8pHlXa7UkI3fs1yrEL6rxMCZEJjOFd8Ttrfyw6UlaOiptK?= =?us-ascii?Q?iZCVzIM3+escc9dodYA9PVvgUxDo+zVhB/U+YJeVYVErE5u9VYM2O9WvL00C?= =?us-ascii?Q?VWoxJAw2YGT5tL4bYUQYHtO6pEn+lHOWuu4uKVPtqzKO5cZ/I6kQtDwuC3tK?= =?us-ascii?Q?8jw5hvs4kStPNaelQQH3F/lsTbNeW1cRdMv39wX/7ERfcJTWZnF5+YQ+v409?= =?us-ascii?Q?h479Tb849PSNR/cnUSVRAendXY/X4D7frd2PYxjbupq58t+VX4GG708XGEfy?= =?us-ascii?Q?4EZ+kVUImVJcZWLmV4lgwSP65bdXtSDe4WLUcsBWT04u3oNiWKhoJBs1aG+G?= =?us-ascii?Q?XTm+3x6Xf5FwtrMUw3XryxpMy3alIwaYcW7LFy+g0l8uBXa8ZKEnaWb8QbR7?= =?us-ascii?Q?z9xCpYBllyUzsCc08dnrIRlLgPX/yChCSY25YV+o68d3nOHaAuVao1wiHM9y?= =?us-ascii?Q?pLlwC0IyMYYVuR7sBOgupBy7y2KuD6ohu0E4APnBllMw3ozavm5TNlRgaFVw?= =?us-ascii?Q?hj3C2YETPFDwIwxkFj3yAZTZ6yiE8hvM1wvmQeWWUvPe8K7dCRDN2r4iPIjF?= =?us-ascii?Q?gaaJdAqZiF7rN4ysOSzKaq5v03q8+itI7IxjkEz2EGNCkz86szh6ARTJr+iB?= =?us-ascii?Q?GwrY4IjZkA7pq7Zyu+kJOhRZlVMfkjesx4FjymRhTG39mDuLBo+Kkmp4F9eu?= =?us-ascii?Q?28JxkmnhePUF9lnUaDugj6Xbj8Iui/pYYOrEGk6i12ZHYgLVi5KL1SwQGTSs?= =?us-ascii?Q?OX9rEK2lc6P72Vx23q8Oqs2q4MCdrbKqwP+Xnf1IoAW3xWZsCMqEYseZ0NbO?= =?us-ascii?Q?Qee65zRCrLcBIuqxTaaOOznBjivj/YvZ8QhLziUrVG9jUkm8Mj1g6TdrwIY?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?2KqIJr4xvkUmaNBY2jE59vrY/NvKvLVNTwEiBKvgboVU6tJ2Kj+Cpo4BfNnN?= =?us-ascii?Q?yUbyhLbozE7m81jX65xqSAq5BNI5uCeytontdPNDk9Bhvh+h2k9zaEBPrzRY?= =?us-ascii?Q?dxN1A6cMsm4TbNxc+pYMReX9aOwEBIsQ9SFzk1zOHMfemozlU9fIzAzoiptA?= =?us-ascii?Q?ntNRRZgW5ai1mJK+2Pt88J04ftkUoIxlJgBf391ulwoierK4+sf/hYAVERil?= =?us-ascii?Q?P7RyYHDbOnHSgBMOT5MgTjWCq2Z+iXX+Pv5jd78vyfmAnErK1NojSG1FZNiI?= =?us-ascii?Q?xSNERKMn5iCnvWu1Yh/o4aYqhJvtagHc42B+W4LMNjR9XPVadmw1z86QAujZ?= =?us-ascii?Q?or1ABAWgaE5WMBFCrswnflS20vnWnyz0OuK94FnFQPU9vrqso7KyMNSVUP5g?= =?us-ascii?Q?sPBwvoYglRUrlDcEd3M13uMyiGBUJIGYr4APVIs1ZYp3wOUAVzFMaWetPsoX?= =?us-ascii?Q?Jd+eBq0wZdexWPKKyN53Xf4V/+Td9ZR8RbY8p5JcJADYeIAFVrdz44o3Whe4?= =?us-ascii?Q?sEB33cGT+MQ1/XebIsAdb7DpPHXaZstynBSFbJOYj5BjwlLU5J4PzhLJG3Ct?= =?us-ascii?Q?iyTSPmaeRvMzZuD2ThRaCew8cXBoFg733NQ5OSa7Qtf1SymdJs3AKjYMf1Th?= =?us-ascii?Q?dSuR6NqK7sloDdmuuecxePj8gmow5aE0/4xY3ijr/gZqNH+wixElOq8GHbS8?= =?us-ascii?Q?B/oVU8hwMV9GdLNFclNQNmGse/SByi3zMzpDTvuA6cfWnws7f2dqutfKuk2v?= =?us-ascii?Q?PO1EOFVNqq36HFtuvxkEduspvR/0jC4SVPQUcgZBKbAelMugnTd0AQIbKDwd?= =?us-ascii?Q?Ff8UpEAgiI22KPCxVaEeK2EgON1WKVGV2e75lw0VWywF1RXmnNHvK0b2uYoy?= =?us-ascii?Q?gq1EHxKn6Gm8CdVQ7+ZY54YUNIQ7m4UySzUGmQihNkgh0v/xZIM8Hx2MwMSF?= =?us-ascii?Q?4sSGU1XF+gYNGFW/PqWgdbwQt6vdFoXubIE3lGzoXvhadZ/VUY+zABs4js3I?= =?us-ascii?Q?Msamc5kln6EYc3ClJL1NuhinHx0I2bqbdfCHWFWJg2dlFmQV1x7YzQWu6oV9?= =?us-ascii?Q?+LPx8pTnmAxk0uuF0MtbthUIy5celsLv6N++UzLReu4UIjzjbxwLbZfdKDDV?= =?us-ascii?Q?rzbl5h6DYcKHPbf561d6vswrUGeCbUpOAYz9F+76C+pY7qtW4v9P0Xa1d5qr?= =?us-ascii?Q?MjTue0f0KjMfnWE73+hHal70cMCO9BrlDXfize4loxMsPW9mXhemXTcyUk6K?= =?us-ascii?Q?2LNm9EYmFUaj+lWgxl9pYSnn202C+uOXwleO3JQ8TX3RmOb/bAEO4+CU0ve5?= =?us-ascii?Q?RuMtZS9op1a8V13xGocG6oWQ6Dhr5vC2VwcoskPvZjOJBjpNNyCwN72xS4cA?= =?us-ascii?Q?X25Mb8BMe7a5QijW3U0CtJjciEtSu273n/oHFkYLmTAqUacEw/tIVg8UYvwE?= =?us-ascii?Q?t57R+8ThG9O50+17jE+Tk5CccizyvQpCowKwDCFKeHTIOXZ3r04TUUSrTvFu?= =?us-ascii?Q?t8cJ/xpgUeyyFlbeDJ85dqjRj8f932e2mRCk3g6UHSvlspPVshI+rAgdVMS+?= =?us-ascii?Q?ZRx3dI7eJjYGkSst2yi04JvUIrpIEORAn1dHvCJZqbfNrpmc8A7tgdVWeWrD?= =?us-ascii?Q?Zw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: mkYomvbKTQSny/5DtHo+XmTGzOs6DUxeRuBHTouCgEDAasm/qCT/xhAuuDn4BM10V4n21KsiossgpgjlCmmDH8zgAFkntQ0T7E/leNwkhJ3zj24docinN5k4fYC3DjpxuZBkXCX0oBGB00iUrDEkhwcrCDBv+U6dkzuF+tK6QvVcaABR4rlubSYc1QFTVn/KIkXLXOjzlp1SKegAYE1/b3DfgMwnPZsQLGORNhf8nfqHd9OnPHyhNXylckfulRVlUISx1WryQPKv1zlE29O0Jtkj5OBZopr8MksjLhg5lgDuBO6b7XYC7IL4Em35fgkNWkVekAmN2Z++T1qLjecdm5LLUdJoapTi4awsVHhf01pUAs+iI6dSAwsrBqAgLTiokoyOXh0UrJaVavFmZneLATGP2AmFor3u8f8QaUoy/69nutZ6UtI+sXh8k2VhTNPSdVbQ6XJ3T4INFHR6WUG0X1pI4JvcsKdrsqu4WiVqUMxQCZ5+cerz7iLT0QihXeAZghyGR7yGI8lpiy+CDFzCpIdoBb7zlA+H1ECCxUE/RZSH+2FOK2xPyFUi91+uCm4YnOwCl3mjqMFTkH+7x85XkKFs/24zvomwpN73eGv7PJQ= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 63967a97-de86-402d-b81c-08dc7eae1b73 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:43.0478 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SqRW4Hvo321tHpmVsIcRPJTuAgOOUuN5zH6BqPxasK2c39MFdWHdStQa02N0N0ekmdDOz6Yv2kjzKQsNBJVSKRYWUAdftXEimfLruOFtUDQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: ihoVAeVCkfAGiLw6R_YXFoTS08YLuPpi X-Proofpoint-GUID: ihoVAeVCkfAGiLw6R_YXFoTS08YLuPpi Content-Type: text/plain; charset="utf-8" Define tif_resched() to serve as selector for the specific need-resched flag: with tif_resched() mapping to TIF_NEED_RESCHED or to TIF_NEED_RESCHED_LAZY. For !CONFIG_PREEMPT_AUTO, tif_resched() always evaluates to TIF_NEED_RESCHED, preserving existing scheduling behaviour. Cc: Peter Ziljstra Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- include/linux/thread_info.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h index 06e13e7acbe2..65e5beedc915 100644 --- a/include/linux/thread_info.h +++ b/include/linux/thread_info.h @@ -71,6 +71,31 @@ enum syscall_work_bit { #define _TIF_NEED_RESCHED_LAZY _TIF_NEED_RESCHED #endif =20 +typedef enum { + RESCHED_NOW =3D 0, + RESCHED_LAZY =3D 1, +} resched_t; + +/* + * tif_resched(r) maps to TIF_NEED_RESCHED[_LAZY] with CONFIG_PREEMPT_AUTO. + * + * For !CONFIG_PREEMPT_AUTO, both tif_resched(RESCHED_NOW) and + * tif_resched(RESCHED_LAZY) reduce to the same value (TIF_NEED_RESCHED) + * leaving any scheduling behaviour unchanged. + */ +static __always_inline int tif_resched(resched_t rs) +{ + if (IS_ENABLED(CONFIG_PREEMPT_AUTO)) + return (rs =3D=3D RESCHED_NOW) ? TIF_NEED_RESCHED : TIF_NEED_RESCHED_LAZ= Y; + else + return TIF_NEED_RESCHED; +} + +static __always_inline int _tif_resched(resched_t rs) +{ + return 1 << tif_resched(rs); +} + #ifdef __KERNEL__ =20 #ifndef arch_set_restart_data --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 CED2D1B806 for ; Tue, 28 May 2024 00:36:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856572; cv=fail; b=iHv+PDZ3DhNJZSv32nT400Pt5aiLXHugjGdq5CubPwZZWLU/ht6P1lALEzWuTBz04k9EYk5fMzguzSxOifKfM9uw2a+Rz7IyL+7/e8ALaJx3QoEyfQZ4eCkad2wdg0lHzGwKqr1pvGMuKh7DRWzbWVW+zkuCB/DpCYkPVl1c0v4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856572; c=relaxed/simple; bh=0DAd/f8VO/6qaAZ+2NVJBCFl7M359s7LArrDvUIVuzI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=nOVpHoacvmSHJFNuL1tnC3bE5QBbHdbEk1grg5EdrvG2jCQKPEj643xCoztN0rVty/pRPaJikdsaQuBXrIhrnp7paEE1q++vz8nNGLR7wNugAssStGR/lPUbzwvjZHBNFsevXFfnUVIJu0IZDSPN0eDffJdwXce/urmsX6n6kbc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI4rL025170; Tue, 28 May 2024 00:35:52 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DwkndxcNpOo5dcu1xnkuIwkRcvCSZ+igxtkgaOKdrPBQ=3D;_b?= =?UTF-8?Q?=3DSfljOBzhTu4bKAnRplSvemwIqVXie3O+8j1TznClkBCqgTnn08H3s7KIQY9k?= =?UTF-8?Q?hAw5HMsc_BsOaQ/vdjCvpzQgPR5+W3UQGc0+2UltYFEsY7aR3GzieCVee1vxam9?= =?UTF-8?Q?OmBZTAaWURT6Yv_b3rrJvELI3Dv/OE7S1YZJvFam4zUg4+wPTxIeCLaCE+yUH+b?= =?UTF-8?Q?85mi9nG9794T7ftpaWqB_efq0TmxcQDVuc7tSaCfFnZDWXD6TKEZY7cc2ZCZd1t?= =?UTF-8?Q?2xU+XHsiLODVP8anduDgSioKRl_fkawgT0Ffp0eUR0EAHtwTzF66qXwLDssx/4E?= =?UTF-8?Q?gzz/qIh/RxMDrcgl1hlv8f+h1gLMnWlD_Og=3D=3D_?= Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39b3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:52 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLGu7t009236; Tue, 28 May 2024 00:35:51 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc52agc1u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oQmoQAdCbb0qTVyFRyXGGrPF1qbgdY/3hqzL3kiEwMKOb8Bsr+KTgo63Y3nCdJpWMBtUhkc95CAD9erHinU4OG+icBAXGcwDnqCZPoHCV12/CPf4PSg+ZnmJxrLFsoIMHZ9cAm8I8LKTXcc70Zfs8QW7Md343KYRNyMbrt5NmpmrkouHTwgpN5d9oTplcVIM1AfnBKE/fldyT6Ufc2N4W5k8XCXwdb+g+mIj2itqYQJPpl01fnPpcSwmwbSloVPefPOVhvj62iHQ5uBCNoSwNz2CoBZDLJKKqfDTEga1nUfjd19INyaDn/mqx2gMg91zlRd23f/McdlgfPr2rOcy5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wkndxcNpOo5dcu1xnkuIwkRcvCSZ+igxtkgaOKdrPBQ=; b=Q6xEGO1DzgZwJWVmqa5cq1rOTpMZEvuKgnw2tNLeoxFASTrWtmY+AAvWCdw54SJ9mn3o9+9ICijMI/hAkIxNSYRf/bxtXV/yYuCdalaxypbNn4RdmhyLILkl4ZY9WMOPyxAFCaI4jEnw29C8wHllossNj6IPzaHrZ/16/IxxqLzjtMZw1GCuoAxj4KYVb1lWJLUwkHaf5s9iQP4H7EFG3HkOeqevFX/kszEivXEkjWSCITTU0zXzAbBGipUjrDPDLlhumZSOs4jAvW/L/626drwFqCPsJ8iDW4VelUIPqCq5MDS12j8QPCTr2Eq0764Z/+S5AWdTsTT92F3zQoEprQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wkndxcNpOo5dcu1xnkuIwkRcvCSZ+igxtkgaOKdrPBQ=; b=JFAeXFYL8vFZEPT4ED+Vv0hu0xyX9KpmiIcbq/biVHzCIWIfUChjLzvbBtkJJUjG0TEBKGNafhKdpxX/CjKHbkPazMbpiUF1mRLDOCNox7jxuKUfqif/LCdfEBJb2SYwjZmeDsvphaTDSDvxXNPf0SwTrejxiZuZuV+Ls2rl+9k= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:49 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:49 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Arnd Bergmann , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 06/35] thread_info: define __tif_need_resched(resched_t) Date: Mon, 27 May 2024 17:34:52 -0700 Message-Id: <20240528003521.979836-7-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P221CA0010.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::15) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 6801088a-202b-4789-033b-08dc7eae1f1a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HDMy7AaC/s8jczGG+LW0MmiVZxP1tn1XS44yegrrKI1HihSiuwhBp2VqKDNc?= =?us-ascii?Q?pF8cHUcDm9rsKayvZIdes1PKEr8iVUAzooctG7ToSpeCwgp7Wj2ovnwVhc55?= =?us-ascii?Q?p5uhYkoGKiKSHh0D1wzu4XRZZ+es/losjwb0/wNYC1Je4GW2biDcmYMLtsEd?= =?us-ascii?Q?GIDfPJMDycOJu4C+1jy0S4H/ZVPLgea+Js5XNVwFEJ1nXK6+QokB5KJ96MAP?= =?us-ascii?Q?k1HfInSEyEs117jZ67ktRI5YJx6aMP52dRp2g3G7sOXd/oxXJCDh5Vvp52TV?= =?us-ascii?Q?RppPWmvnhywvKSHbNnxnUnV0f+2yhRpUr9PaTp8fwwBAmyXRB+vSQFo6x69c?= =?us-ascii?Q?VLh7hrDVQQ9kE8wO/83BbsKpd4++dCCu81sjeU7EftImU8FMKBHQtgDvJaRZ?= =?us-ascii?Q?ljp8Ougbxyrqbe4efWK60CaeqM6sM0xZcrDkWBgjVbOO1YrfxifrHBE1ogIC?= =?us-ascii?Q?DXwDRhGKMeETaYrcgUp7bFfEd47/W9oWjj+Xs5/pS8li+2Qv+PmTswm9XtuC?= =?us-ascii?Q?WcXpCp70fU7TEy5VfWY+2rLs29QZzqTJTanrucuxQtamQur0ditAgDoe1BiG?= =?us-ascii?Q?0oMrwecsHTIRNHX6n6dHWm4emL40+Txk5SMLKl/K5R4nVajywq6t1C17VX6j?= =?us-ascii?Q?2czSFjL6JVM/Zs31oVQ2vcrvkSXA3Wt9vLMRBrNK7sLGADcRqNamNDFjXSGj?= =?us-ascii?Q?CtpGxOMbas+uB478loNIjksfDpKVKybLWM3Q7mJex+Ec2x3rCEVgINUQWITt?= =?us-ascii?Q?FV41s9TQQU4+t24nl3Rmp9MBqNV7mG1J4De2goG+dZZvoVpoGSqTHRwP50zD?= =?us-ascii?Q?1dxtdKkauJFEdoLbwsXpQ/IgrQ3MWzAdRU1GVZCrtpTH6eLpzY0GE2x3IVDf?= =?us-ascii?Q?areqfl2ebbDsQUbWBbSiqnrt0Hc1FhV/y4W+8BNXmP2WpaLr4QGaZNo/FqXJ?= =?us-ascii?Q?VPsbkNYTnFxpu7HIAaDwAFeaPxtX0o+zNAIffpUVr0HEGSt/4lG2cMwz3Igk?= =?us-ascii?Q?Ob/q3kl0nmsJOQDHOjF7oybdTdbelmqwBgCleHyouAsWLY2cLDj8yaS44HrL?= =?us-ascii?Q?cWvNL1FedyrJO4LhoxvkbZWI2MQLAIrAlJxeJDV8Rq1QWETTAzW31V3Btk8Z?= =?us-ascii?Q?1EgCjRk8u1iCY/AOyw58kxx2gtbUSRerAGANXQcL/fuETClQm7f5vIpPn8Ld?= =?us-ascii?Q?46ASzi8LYrO6M3AlYGEZahge2rk3Kc5UIVMsSb3KmXbqzxyp9oWmsWxRD7s?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?4+pcMN9sKtlJ7T1CHR7aTq1Sn+YSVsizV0R21FL7GCVb8t6k6/NXiW5rQEAR?= =?us-ascii?Q?olYRSmeOREGN3iZ1CywKMRy7CEtRoqKLbFXgJaNN1ZlKEBXB/DAaHw1wCp/L?= =?us-ascii?Q?4L2fEZgS+560nzJ+qVSgoUK+mf523j3Tba5TNcku1ciqgP9UgFE0ocaME/6x?= =?us-ascii?Q?6vYZ+S5pnZbZWNh0yB9kaS1FhOHQjSsYstaMeC4d2X3d3ffhzvtBWRlLpRpi?= =?us-ascii?Q?23k2pWiNu1jCkZbtAOnhTf9GwRr+O5XDeaT1ACCI6mhywyKUzq+Y180NshrC?= =?us-ascii?Q?VCl3iPS6mOwhx3spVMtKR9FP8WW1QJfByKHKUAIoJvP0JiKKqrNpxrj7iKdY?= =?us-ascii?Q?MPvtDTFdqlHQLLMbQPE2rbuwFKLaDyefOHVXPEgYyho5Bfna/xxrG1LC0j8N?= =?us-ascii?Q?YxLUUY4mASOH3e8bKF0fPCGnvTw8N+1pHdJAGVeClJy6cQB0EGuLuiRTi7jG?= =?us-ascii?Q?P0G0oH+4IGCQjd7QP3O2fwwER/iSJxOmDPpghk0obR0iAa7TqqkDFXTJ++8e?= =?us-ascii?Q?fYOsv+3e6Oa2faL+nHG30Gvujtr2nGyHyRXi7qzUO1iP+c5ULc9J41Fy7Wu8?= =?us-ascii?Q?ccbZAbZzm6SfVzfU8wFOilyL5xa4qZkb8v6DK+hwH/y1W3fhzu2rjBMbQkDd?= =?us-ascii?Q?nUZfM5i8ZFhxtqrJmrWcX443rJr65ojzkydK/p8X76YDgqoWwGEEnkpfRhBL?= =?us-ascii?Q?f2grEAJsymUOFq0tdxnTFRUByPnKzu565fE+wYqQvgNh3hEHBPUxTw7YQWz/?= =?us-ascii?Q?pp3dpVHzlqvIdygSXyfqSLTOakMNlVkw9jWj5g/lfxO0y0VFCXoh4eGrkxIA?= =?us-ascii?Q?buTJVQXLh/GMewbl1qIyO9GH65FZcLEYlsUT0ChlH2Oaj2IU1hUDZ9lyXcvv?= =?us-ascii?Q?RloHzsufFjg+N8YP0JahPvZAtDzvPGngfOxPHRkJrR3r8gf2ZZFF1j616/Dd?= =?us-ascii?Q?ACAMcOHNO1wjZmp4GK6HqTsk0ztPnU65fod2gw3wVt+MPXc7hQJrB9VPLcEs?= =?us-ascii?Q?J1ItAr3gcInf3Rbu2gt/1Vu/eA2J7DpqLwsCQO877Esx9cQvv5BhcemMtWo5?= =?us-ascii?Q?9CcXwgFG36XlEhqDqmKvfiYx55tDokAdqfCGqL3KFvjlZCjjpQD0A0Ze6ttg?= =?us-ascii?Q?wDdcTGYfJ7RImZk9fnaqcvjeqjpEVH8BCYNGSQF35TLt6SRp4RHQZ9GMrzvO?= =?us-ascii?Q?9SNmrMs5CNiqFDDW9TPN3pIAr/vY3MFMQA0zJ9H4Wl0IwekxUWkpbf9Xc2mg?= =?us-ascii?Q?AZ+AoiWA6Ub4gfTU14pYY3molMr0FGDpn7JxioKxMuWh3l+gMGiI6LbH0DzD?= =?us-ascii?Q?okcv+e2oV+Ao0MZ9WbWOUtiO8fFTWTIQfZZYp66fd8KuedapB7lSSNvC6RKs?= =?us-ascii?Q?GD1Bottk4TVC9NwxXbQ9xu19dr+WPZ7Ii7bNQe+avIBJWZqPpEL1hvXGqmdd?= =?us-ascii?Q?XVsjSJ3OhtgxXqnK4PjrMCtGZGPFN1bPExeAhjwK3g17Xiy+GHHn0t/d8S3l?= =?us-ascii?Q?cLawm8BlYKpCnZ44TW8rfL8YYZ35XARFnEbp3YayD9PZey9RwPqGCkdfrFbL?= =?us-ascii?Q?CKN61E7Z7FT8BF29KXvY/W7QAlLjm80LOVNuFKxZCpzTD0tLijNNefHB6pVm?= =?us-ascii?Q?EQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: VUDFVU19w2bU72undWPWzmVF43gqeB5S0JMn2uNhQ6aFETBln5/HVvShGlYCt43/qv4Sm9++rDDgRLPQQCAihCeiqPoJ3DeRR5tt84KDbSUzPvHVu3+blwJVYNk0GRaegQmatdtDN/P4wEJm2xcDosucBqDPC1bPjlMHDBypFFqnW7dXccFeTzxQnfdo16niB2S+dT2EVNXLRUutoyDjADqbgpMPj33QbfBNabd8UmGZr8VvqcIZtv0W5xMb7ubD61tWkuW5AbK9KZQKlnredznKV3PlUVVENUCxTrD++gJTU7bmEFxGpfZGAroHefzL7idzO3UZfvuPhJPNOtY/okifEMP5QUYngtDrk58THxhFB52BW5iQvwkiIsZ5wGniYcjaxO8u7a7Cfq9ENSVjJdCSUOFndUfInyElyO2qKoZODhcJGmf2/AVKyY6t/XGoHJ5/sNnyoqkJKwbIcuhMl7kIFEcC1gM360d9leRiiat/rKocYSJfWDOUR7I83df4vH1Yr1brw98SXxmScm0qY2PbicQt48Xd/p2keApKohF1BiBT4c33qC+RzR9DfUak9ytEznmgxcBC0UVTRaiUw4pm12R+GK2DU1RAQNDqrH4= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6801088a-202b-4789-033b-08dc7eae1f1a X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:49.2100 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xkUtwYL8ol1cNMKrq7P/WTRjEl8LpRm5Siw+zb0jYP6rqkwln3icCeSMbZ9pCVj0435EJd8KW7Wnpurp2/twQpbC72wlg1UGwimF1cNDfcU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 mlxscore=0 mlxlogscore=999 phishscore=0 spamscore=0 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: DeB9pXs16TbrUZq8K_lkNXgjV-E5n00t X-Proofpoint-ORIG-GUID: DeB9pXs16TbrUZq8K_lkNXgjV-E5n00t Content-Type: text/plain; charset="utf-8" Define __tif_need_resched() which takes a resched_t parameter to decide the immediacy of the need-resched. Update need_resched() and should_resched() so they both check for __tif_need_resched(RESCHED_NOW), which keeps the current semantics. Non scheduling code -- which only cares about any immediately required preemption -- can continue unchanged since the commonly used interfaces (need_resched(), should_resched(), tif_need_resched()) stay the same. This also allows lazy preemption to just be a scheduler detail. Cc: Arnd Bergmann Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Cc: Rafael J. Wysocki" Cc: Steven Rostedt Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- include/linux/preempt.h | 2 +- include/linux/sched.h | 7 ++++++- include/linux/thread_info.h | 34 ++++++++++++++++++++++++++++------ kernel/trace/trace.c | 2 +- 4 files changed, 36 insertions(+), 9 deletions(-) diff --git a/include/linux/preempt.h b/include/linux/preempt.h index ce76f1a45722..d453f5e34390 100644 --- a/include/linux/preempt.h +++ b/include/linux/preempt.h @@ -312,7 +312,7 @@ do { \ } while (0) #define preempt_fold_need_resched() \ do { \ - if (tif_need_resched()) \ + if (__tif_need_resched(RESCHED_NOW)) \ set_preempt_need_resched(); \ } while (0) =20 diff --git a/include/linux/sched.h b/include/linux/sched.h index 4808e5dd4f69..37a51115b691 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -2062,7 +2062,12 @@ extern int __cond_resched_rwlock_write(rwlock_t *loc= k); =20 static __always_inline bool need_resched(void) { - return unlikely(tif_need_resched()); + return unlikely(__tif_need_resched(RESCHED_NOW)); +} + +static __always_inline bool need_resched_lazy(void) +{ + return unlikely(__tif_need_resched(RESCHED_LAZY)); } =20 /* diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h index 65e5beedc915..e246b01553a5 100644 --- a/include/linux/thread_info.h +++ b/include/linux/thread_info.h @@ -216,22 +216,44 @@ static __always_inline unsigned long read_ti_thread_f= lags(struct thread_info *ti =20 #ifdef _ASM_GENERIC_BITOPS_INSTRUMENTED_NON_ATOMIC_H =20 -static __always_inline bool tif_need_resched(void) +static __always_inline bool __tif_need_resched_bitop(int nr_flag) { - return arch_test_bit(TIF_NEED_RESCHED, - (unsigned long *)(¤t_thread_info()->flags)); + return arch_test_bit(nr_flag, + (unsigned long *)(¤t_thread_info()->flags)); } =20 #else =20 -static __always_inline bool tif_need_resched(void) +static __always_inline bool __tif_need_resched_bitop(int nr_flag) { - return test_bit(TIF_NEED_RESCHED, - (unsigned long *)(¤t_thread_info()->flags)); + return test_bit(nr_flag, + (unsigned long *)(¤t_thread_info()->flags)); } =20 #endif /* _ASM_GENERIC_BITOPS_INSTRUMENTED_NON_ATOMIC_H */ =20 +static __always_inline bool __tif_need_resched(resched_t rs) +{ + /* + * With !PREEMPT_AUTO, this check is only meaningful if we + * are checking if tif_resched(RESCHED_NOW) is set. + */ + if (IS_ENABLED(CONFIG_PREEMPT_AUTO) || rs =3D=3D RESCHED_NOW) + return __tif_need_resched_bitop(tif_resched(rs)); + else + return false; +} + +static __always_inline bool tif_need_resched(void) +{ + return __tif_need_resched(RESCHED_NOW); +} + +static __always_inline bool tif_need_resched_lazy(void) +{ + return __tif_need_resched(RESCHED_LAZY); +} + #ifndef CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES static inline int arch_within_stack_frames(const void * const stack, const void * const stackend, diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 233d1af39fff..ed229527be05 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -2511,7 +2511,7 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int ir= qs_status) if (softirq_count() >> (SOFTIRQ_SHIFT + 1)) trace_flags |=3D TRACE_FLAG_BH_OFF; =20 - if (tif_need_resched()) + if (__tif_need_resched(RESCHED_NOW)) trace_flags |=3D TRACE_FLAG_NEED_RESCHED; if (test_preempt_need_resched()) trace_flags |=3D TRACE_FLAG_PREEMPT_RESCHED; --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 791F5748F for ; Tue, 28 May 2024 00:36:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856575; cv=fail; b=caFXRN7EvmrQIt+z4gXYvASeG9kYuY9dAtB3OQVKaqg60WMsUdylp9gv2BK9JlKx+AGFW0VW6sI95klMw2XcgmABxX0tYsggIoRokndDOnXeTB2JGV5O8bReebL06TYy7gR83XxXtH41DzrJkbL8y9MyYH5X2ALXUabvfSQ73g4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856575; c=relaxed/simple; bh=/RJPxtwoyxtnWixJcP118eBcWSwitJPQMlq1/0kt8s4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=Vqf+rLH/gS9/UylBk6I652k9pZhgVxT+GWXg0GfMsSzkte+Mtsk6wKamNvlE/HSqeeqgTIVfL7JeJuNeyT6b6ORYuN5JX0LMOXQXcDxfyCJ146MMqDRCmyl3xxmKFp5DFF6BslwN/HmFyvVoqRWNbFLw9DAH+JwRYJUiJrLHCLA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI41d025151; Tue, 28 May 2024 00:35:54 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DeOGnwlYC+yrJb/pHNsMdrGIJ7B/rgryKQODlnMirqbQ=3D;_b?= =?UTF-8?Q?=3DhzavMgtt1BsQ+HA0xZBkKyCRSVBIiwstj2MjV8/+CVJQCwyq26LUQok3l0ps?= =?UTF-8?Q?3pQnIOM/_94rpnkMD8LfbQXMmkaLMePJRzpxMVIq0lSvFgcnZKBEAQpTxru1ife?= =?UTF-8?Q?hbecb+YpmfOb2i_eH1nLiiXyClYd/gSLbB+gWH2cb/96H49/LGRpSo/b0TcLxF1?= =?UTF-8?Q?Nykpq2oy6YdGiLfc9+Xn_FBOnSiC8MTPz8Lb77ANu3ZrB1zF77YaeWkeLYmih5/?= =?UTF-8?Q?3WMW4Go+NfFfuama0fFzCfRm1Q_5htKjwb3wvHu8f3pcppp+1Wkzc7qk+qn/oWf?= =?UTF-8?Q?ZHcuS4XfPP9gSa80BWNoDaNNMK7hyO6C_4g=3D=3D_?= Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39b4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:54 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RL6qBq036572; Tue, 28 May 2024 00:35:52 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2041.outbound.protection.outlook.com [104.47.51.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc534rd6a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j/HNFBKjrxc6nP46EovIytvTbe/RNyML7XFeGR9hRRFs/q6jGseWRITNVbipXE3buKPoZWT7Our8IDkEWMwgs5khVPc8Cn3DEUxWhmrgTfRMtdmPQECQPaKwho3m1qt9towPxa/IHPL0OXGo+meDQ01LSbdS0Z1OQV1o/S7Wkr3mEobCvZSKfrptqlgqlQfCN9EKIekzbFqiVuqaDvS4HS7wuSXyTJ5KRd3vmGP/vMGZQ9QDjMW83qH5O4+Wtr151Z54QPcV9peIO1ok7ZRP0XTA+YqVpEtWZKANpSvRKxxmh83JL6WukgNfuygtRmsUEH/GAnaNqdvy8ixYuPIIdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eOGnwlYC+yrJb/pHNsMdrGIJ7B/rgryKQODlnMirqbQ=; b=kcfNQyjs1AEEDcoacGQflzcdxZVaOFaGxYoSTCBrNVgJyVuWRY8yvvTZioP1MJzU8OwWPgm9c1LDK1p+pFwN5jMKCBC/NhpBznMRKhSjKs5aDe/ZHDdZpTEAoYmU+MmMQtaZzqHPmjSFqTFZm7SuaNJGB5EAZa0rQSrFFgRV5eUMemDy3M9zvw0b29MQQIA3Z5CL06vB6AlfF23sT97GkLWmpWrTMS2X4iUlfeuwfB51MISY/lu4/SD10+xuAbO9vwWkTdO7G0pNRQ1q6JsOXLEovvHslXsOeN6zObgU0igTaQ9lyk8zphI3/b9IjWmoXTELsmfnFtBkMXkG8Y8eGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eOGnwlYC+yrJb/pHNsMdrGIJ7B/rgryKQODlnMirqbQ=; b=jwU9I7EDaBHEEQ9VEoc3vTQxrJDsbQGJGyA6Ir6c3fzLWJjfLJ9DeCHm8M65sFvvWZrA7jSa65PJBNw+rfWt3+5kV51SuOoyfMNxuKL8LO5gftpww1iWHli0WFo0xQX2qiNBIyb3BLilciz5Ox4m+qw2n4rPxVjid0T48MQ7tbs= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:51 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:51 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 07/35] sched: define *_tsk_need_resched_lazy() helpers Date: Mon, 27 May 2024 17:34:53 -0700 Message-Id: <20240528003521.979836-8-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0345.namprd04.prod.outlook.com (2603:10b6:303:8a::20) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b4d117c-af21-4e3c-731a-08dc7eae202f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?xgjGaZ+bmZ11LMgOTxH/B7cnod4vN6QctBxAnJd4JwdBzI21RFbB6fAJG9rV?= =?us-ascii?Q?nUGjmXevF+1DJF4rmvk7Y8eyuPl3HlaAGl3V3shn4IMsGTJuDdhDcSG0tjxE?= =?us-ascii?Q?6r5Ij4TdHCyCr33MEi3wF35GYcqNqzvfxQV3jfAJYjikpxKiXXiGRl+NNdsh?= =?us-ascii?Q?5A+VS/BdDzMzZ9gomds/n8pxmpeg1QskDlYL8OZ5F1a1DWYLzPBTAt70rCJl?= =?us-ascii?Q?TwCZkoZrG2oJp1VIZKKdQjcxO2bCr33dwiQmJDcWjXORC4ximaLJytNusOFV?= =?us-ascii?Q?Snxl+mShpK5OaqcwcjC6AOpu98nECRgHRj3F3HmfT0VbsG74C4q95PwRSjDC?= =?us-ascii?Q?TkqqJaunQomYke5inmMw7B4zkxK4z4M5YLPS3NtyvOdATCfvCYJmJSp6QwL3?= =?us-ascii?Q?dQK8sExfVTUkkVrEcG3xAkxRaAwtxdGUORLbBZF/Dm4Xt2dJeoxf7YVBD0SG?= =?us-ascii?Q?2hEE3AMxXWO4zGIk87BDc83C6sZAoCqPpCd/E87xGamijlv4EhzzaycAQdDG?= =?us-ascii?Q?VS7eUmcpPYRNOwR5VlobyMjxB+9pb24mY5DpsT/fl3sJfn622TzS63bb9pPD?= =?us-ascii?Q?6BffgI5o0koUpuq/WIEPuJTt3xDbjEjuQoQ7nlsogcO7kHPPjO/QIA2vlS9s?= =?us-ascii?Q?CtD9jge1aUxsd9cUvzY9J2GIzM34Ms/0x+DvtI9ZsvqUSxlgxjtO5HzSUMev?= =?us-ascii?Q?QyYUOzL9zPG7IM1p+3cPQcyixm2RMLkN4XLmsh97UFPFB52uyxtYtDm12kRt?= =?us-ascii?Q?L91Ce4vm0JSvDNU4kQk0WJVwVOgYTrPHfioJrYbNQO3mwoOgRV4U+9IY0YM/?= =?us-ascii?Q?7r1TeI3gSaHpNietb/4Kjr1xSFRK7U/LMaYoDmKk0l5KSkV/dI9MtA2pvViR?= =?us-ascii?Q?H/J1JiDuT0xjLI00hC3W4VaQG1w+M2J3jTRtlLf5V9UOq0efT/749ZehHEAn?= =?us-ascii?Q?SUzKg1MO793MGWoV+Hr+G83Rhc9VvP7EdN7YJ7CEbuNqTF3krk894Azj27dc?= =?us-ascii?Q?tY2M/uugCdnY+RsRKCnGeyiNfongEMjqXmUtpwOFT0FJb2ZxxqzzPnaDmbnI?= =?us-ascii?Q?WLJHS4MhHZJ5sKltrGltAli5VUIL2+kKXRmOEQvpAyPUDpzX+qjLSpjAt7J6?= =?us-ascii?Q?azHfnTmt4czf8Nucgy+mbkjkJR/O48uDEJeT58VfKeSkXJbAh70HXb4Y1+Ou?= =?us-ascii?Q?zO7VUGRnX9VZFsiwltchzJ13X7XrysCtokvvS2u86crPptUGvz/77jfMXD8?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iUPuVOCsFQy1EPmUzd9nGQCKNu8FKDgdCSvb4QihonZk3+ZFJ0R8BNZmJb0g?= =?us-ascii?Q?qEHUUwZLZ5LnQYPgsuFV7MSZbYLIgRfgDqBBHlTsI0craJzvV8MtJQ+zzQRa?= =?us-ascii?Q?3j9d6vGA1sP5D8XLyWJ7yhha111pkmYDGxlDZgLOUvZzxHUTuMlGEP7KK7Wa?= =?us-ascii?Q?v7Csr4I9R+shwWUSJKTw811CUKw2/YJt6KZC202uI6otMGyfsyk4gpDvQA0K?= =?us-ascii?Q?RdgxuYLt48OwCmtcjsjjhMc7bU4gYdBJBBWen+6XcO/nLQTY7cTUJByfqEgY?= =?us-ascii?Q?7gkCGDYCWJl5zrFdRZYh7K3iFUPcW56XzI9svG8ugCMBZmxXQGhXbdFf8Ici?= =?us-ascii?Q?9amRDfstsjr+3kxSQjrQhsnfEOdfZNsB8GKPYEcJ+45+imtsOQqxM6hBpWTg?= =?us-ascii?Q?NHv4X0zkc3FovBDLzdzTI4jUMOeM6LQ72oVuJwLZY4KGhBZCGPlwC6UE7f/0?= =?us-ascii?Q?Yc6RVlTAjF3yhBSVu6H1kZ1UJGZg7X+BFVpsPngTVwwUdq5h34gNFBcXaUJB?= =?us-ascii?Q?i5Yi408slguTr9ncBB3se8T+PLEij27iJPx7ArB3rnFAnGiyg862MzzjHqId?= =?us-ascii?Q?yjw5/pfsRmitTZVdIgQB1H8n4xhC79lGPAS/fLZLUJglWwXCr/dpWzWwUqAs?= =?us-ascii?Q?QUqO+/GWBD88OG9SwgZlcJluFDBB33hSafx+soFQ9VeW/zKn+NOLebkIxqsS?= =?us-ascii?Q?0iKbl0WYMpGZvX46H8k9G2iWBG1rGdtEGBSKjVXvb9MYeMjxJfIw/+6BZN2b?= =?us-ascii?Q?n50PykqdwdaTRmARxaxSuSMyiWd6KOUAeswKDJlsTJJpIT7kwKpQizXglrf7?= =?us-ascii?Q?aEREThjpIn+oXr3m5pu2FoLloN2kbfvgUwAWEBOUJIx9Jl/z1zilISD9XVeo?= =?us-ascii?Q?L5pESVB0Er3ylKy/xIpTOm8IhR96Av5MEB8cD5RaJkb1gUfjH46gdYAgruqQ?= =?us-ascii?Q?2w6lkZjGhRZ9mnz2LZSNNg2sqiIV0j+4/rvmUdZwu3Ijz8NxXmSfUyT7oKZD?= =?us-ascii?Q?knryPKeCIjEP0JbIxr6gur9ehRhH36HqdlFGAKxbev+97kUaDWhnPgw79FFv?= =?us-ascii?Q?JhDj7ulWiREvEZL+e8/yWB094k5MYaZaarYHTU+SfMyhZElLF2jKytUYASSv?= =?us-ascii?Q?Ffvnedvbju1joN7w6yVMXrSrzebYr3mAvhUx9UKzrQoklZqPApcPjJ0M8pjo?= =?us-ascii?Q?4uNqXpypWip+XFELWV+2Zr+G+Vl4rNAqf/jtNqdoRDjIROzekSdBB+kM/2wL?= =?us-ascii?Q?ingKdfIw/4aq1M6WTLBdTjW3NbeVhRqCVyp1nxOYlEsOcFwv+PVaocF2H+E6?= =?us-ascii?Q?0qcBrV+s6XzDyN7ej5nMl9R+Y7ulzQUWQw08EtQuLGURaKiVj3kt5I6NoeJB?= =?us-ascii?Q?radgJjKdB7c91RzSI2iwD+Mj2d5pRRPl/anMMFvfeRqqan6jHShx9z5xjmhh?= =?us-ascii?Q?InluwB15U5kvX4g+ZSjn3srEuqn8EieJ1iHOhatP2OSkPKojKJzITaEAS7v1?= =?us-ascii?Q?vO3JddbWVbdNUopD/x94gn2G+czc1JhzyRmyA2ouOo3Iugo59/jOMPfpXZRd?= =?us-ascii?Q?ZscDhf+eEKn9tpnkiNAo1x9L7GzaLnGYPWQCFMLY7LTfD8CQoVVe+gPDNKL3?= =?us-ascii?Q?oQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 9/xctthfBGJQousXFOL6OErNYAEZH/Wd9LkNnxkdJHdgFNCBbY4dBqCFCStBCDsC/VTMMw+iiwlcEFnPe47mOXVRk1Rj3peTS/eOs6NH4nsq9xGbtPbtED49br8TNdAP1jT/b99ZRL6x0H4nimC/59fktI20T6ABC/ufO0RuN77/gvi3ymIitYROmRESqCsVCyBjLCBmOMuy5KexcLPOxnmR+1g5KvbzqpwNtE1rgu36F+T88NIibOJ2Dx79O/qCAfMtERiHNmjo9o9fOZmQvSSx9uut1QnMfguiYQr/0z354xFnbOtj1aCUFqEpSA9yffe1igeh7HcR5HGSfq14BxFYWsAcssUeUnJObbvfjms2Fxs29qVTH3lALe6juetBFfCQFranceb+ZeC0jv634bT6B7ANMI8QhC5m1+XhO8NIFYiQWLYgXT6kulabJ/E++FNJAFJGz3SriZOW9fpYH+v2YEmhjg6Aot+wPkO3T5nDW2c76BitNck1eeo0JzGee3GuMK9ATm6AEXoDo9z3CHcepwKeVtlq8Wea0Cc7sJtS8ud3C/3HuVl+t4keJsVFMWwackWMqLzcPzKouvVsk7eoGtCQF9LAx7s2DNkVZ3I= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b4d117c-af21-4e3c-731a-08dc7eae202f X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:51.0613 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JUe3fD33RGCnVA8CSFCFTu6MWOTsfW8UlCBcwyRpUnkGyXgfI/E6N7LLJua0wcM1EpIOhXOhhbQooURmG+OgRTNDDXFKYr9MG3P3DPeVIIA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: 2gKGDlEYFA2fXHTNV5Vq5t9Wl8hfDJkS X-Proofpoint-ORIG-GUID: 2gKGDlEYFA2fXHTNV5Vq5t9Wl8hfDJkS Content-Type: text/plain; charset="utf-8" Define __{set,test}_tsk_need_resched() to test for the immediacy of the need-resched. The current helpers, {set,test}_tsk_need_resched(...) stay the same. In scheduler code, switch to the more explicit variants, __set_tsk_need_resched(...), __test_tsk_need_resched(...). Note that clear_tsk_need_resched() is only used from __schedule() to clear the flags before switching context. Now it clears all the need-resched flags. Cc: Peter Ziljstra Cc: Ingo Molnar Cc: Juri Lelli Cc: Vincent Guittot Cc: Paul E. McKenney Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- include/linux/sched.h | 45 +++++++++++++++++++++++++++++++++++++---- kernel/sched/core.c | 9 +++++---- kernel/sched/deadline.c | 4 ++-- kernel/sched/fair.c | 2 +- kernel/sched/rt.c | 4 ++-- 5 files changed, 51 insertions(+), 13 deletions(-) diff --git a/include/linux/sched.h b/include/linux/sched.h index 37a51115b691..804a76e6f3c5 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1952,19 +1952,56 @@ static inline bool test_tsk_thread_flag(struct task= _struct *tsk, int flag) return test_ti_thread_flag(task_thread_info(tsk), flag); } =20 -static inline void set_tsk_need_resched(struct task_struct *tsk) +/* + * With !CONFIG_PREEMPT_AUTO, tif_resched(RESCHED_LAZY) reduces to + * tif_resched(RESCHED_NOW). Add a check in the helpers below to ensure + * we don't touch the tif_reshed(RESCHED_NOW) bit unnecessarily. + */ +static inline void __set_tsk_need_resched(struct task_struct *tsk, resched= _t rs) { - set_tsk_thread_flag(tsk,TIF_NEED_RESCHED); + if (IS_ENABLED(CONFIG_PREEMPT_AUTO) || rs =3D=3D RESCHED_NOW) + set_tsk_thread_flag(tsk, tif_resched(rs)); + else + /* + * RESCHED_LAZY is only touched under CONFIG_PREEMPT_AUTO. + */ + BUG(); } =20 static inline void clear_tsk_need_resched(struct task_struct *tsk) { - clear_tsk_thread_flag(tsk,TIF_NEED_RESCHED); + clear_tsk_thread_flag(tsk, tif_resched(RESCHED_NOW)); + + if (IS_ENABLED(CONFIG_PREEMPT_AUTO)) + clear_tsk_thread_flag(tsk, tif_resched(RESCHED_LAZY)); +} + +static inline bool __test_tsk_need_resched(struct task_struct *tsk, resche= d_t rs) +{ + if (IS_ENABLED(CONFIG_PREEMPT_AUTO) || rs =3D=3D RESCHED_NOW) + return unlikely(test_tsk_thread_flag(tsk, tif_resched(rs))); + else + return false; } =20 static inline bool test_tsk_need_resched(struct task_struct *tsk) { - return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED)); + return __test_tsk_need_resched(tsk, RESCHED_NOW); +} + +static inline bool test_tsk_need_resched_lazy(struct task_struct *tsk) +{ + return __test_tsk_need_resched(tsk, RESCHED_LAZY); +} + +static inline void set_tsk_need_resched(struct task_struct *tsk) +{ + return __set_tsk_need_resched(tsk, RESCHED_NOW); +} + +static inline void set_tsk_need_resched_lazy(struct task_struct *tsk) +{ + return __set_tsk_need_resched(tsk, RESCHED_LAZY); } =20 /* diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 7019a40457a6..d00d7b45303e 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -933,7 +933,7 @@ static bool set_nr_if_polling(struct task_struct *p) #else static inline bool set_nr_and_not_polling(struct task_struct *p) { - set_tsk_need_resched(p); + __set_tsk_need_resched(p, RESCHED_NOW); return true; } =20 @@ -1045,13 +1045,13 @@ void resched_curr(struct rq *rq) =20 lockdep_assert_rq_held(rq); =20 - if (test_tsk_need_resched(curr)) + if (__test_tsk_need_resched(curr, RESCHED_NOW)) return; =20 cpu =3D cpu_of(rq); =20 if (cpu =3D=3D smp_processor_id()) { - set_tsk_need_resched(curr); + __set_tsk_need_resched(curr, RESCHED_NOW); set_preempt_need_resched(); return; } @@ -2245,7 +2245,8 @@ void wakeup_preempt(struct rq *rq, struct task_struct= *p, int flags) * A queue event has occurred, and we're going to schedule. In * this case, we can save a useless back to back clock update. */ - if (task_on_rq_queued(rq->curr) && test_tsk_need_resched(rq->curr)) + if (task_on_rq_queued(rq->curr) && + __test_tsk_need_resched(rq->curr, RESCHED_NOW)) rq_clock_skip_update(rq); } =20 diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c index a04a436af8cc..d24d6bfee293 100644 --- a/kernel/sched/deadline.c +++ b/kernel/sched/deadline.c @@ -2035,7 +2035,7 @@ static void wakeup_preempt_dl(struct rq *rq, struct t= ask_struct *p, * let us try to decide what's the best thing to do... */ if ((p->dl.deadline =3D=3D rq->curr->dl.deadline) && - !test_tsk_need_resched(rq->curr)) + !__test_tsk_need_resched(rq->curr, RESCHED_NOW)) check_preempt_equal_dl(rq, p); #endif /* CONFIG_SMP */ } @@ -2564,7 +2564,7 @@ static void pull_dl_task(struct rq *this_rq) static void task_woken_dl(struct rq *rq, struct task_struct *p) { if (!task_on_cpu(rq, p) && - !test_tsk_need_resched(rq->curr) && + !__test_tsk_need_resched(rq->curr, RESCHED_NOW) && p->nr_cpus_allowed > 1 && dl_task(rq->curr) && (rq->curr->nr_cpus_allowed < 2 || diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index c62805dbd608..c5171c247466 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -8316,7 +8316,7 @@ static void check_preempt_wakeup_fair(struct rq *rq, = struct task_struct *p, int * prevents us from potentially nominating it as a false LAST_BUDDY * below. */ - if (test_tsk_need_resched(curr)) + if (__test_tsk_need_resched(curr, RESCHED_NOW)) return; =20 /* Idle tasks are by definition preempted by non-idle tasks. */ diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 3261b067b67e..f0a6c9bb890b 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -1680,7 +1680,7 @@ static void wakeup_preempt_rt(struct rq *rq, struct t= ask_struct *p, int flags) * to move current somewhere else, making room for our non-migratable * task. */ - if (p->prio =3D=3D rq->curr->prio && !test_tsk_need_resched(rq->curr)) + if (p->prio =3D=3D rq->curr->prio && !__test_tsk_need_resched(rq->curr, R= ESCHED_NOW)) check_preempt_equal_prio(rq, p); #endif } @@ -2415,7 +2415,7 @@ static void pull_rt_task(struct rq *this_rq) static void task_woken_rt(struct rq *rq, struct task_struct *p) { bool need_to_push =3D !task_on_cpu(rq, p) && - !test_tsk_need_resched(rq->curr) && + !__test_tsk_need_resched(rq->curr, RESCHED_NOW) && p->nr_cpus_allowed > 1 && (dl_task(rq->curr) || rt_task(rq->curr)) && (rq->curr->nr_cpus_allowed < 2 || --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 CFED08BE0 for ; Tue, 28 May 2024 00:36:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856575; cv=fail; b=B2HnRjftwAx9tbLaJ945FPK9Sodt75FfOvoLRhFNI19Y0Z1nTBvk7ACrDB6r76XQceU8qRQ9Btae3GU+B97gaSRGzVix9O6F/3lQ2kfef832A/hvSZMW1YWKJ+ctsBlF8Zl4l9mWy8LmVtQU+FuEIBmzcaqXsVv7XHyYGkl8aiw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856575; c=relaxed/simple; bh=/+0z1IsP2Mv++qTpEsoFiG6JTeCdhYUAYk7BD/ZJOts=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=sri7gqYNF11z5zVyKJfJCTRNVXo369osJnPFZ3VGPsvEueigerZudZeqpEjOqmkzuT/ehiZPhm7VEfqfngzFBBCuXkHsdfMyr4kIrnNzOcTR9GXpUGCIbBvi5vODn0skHkgJRs3yPFVTBDrTDGjDl3HvIsZ9l9y+PS76dS++Qkk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44REtQoP013245; Tue, 28 May 2024 00:35:56 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DkLaaWNi1sPdgUoO/a7tbMOGsOKOg+5uFKHEtfG9u+CE=3D;_b?= =?UTF-8?Q?=3Dfc8hbT/+8jhuKtBq6M4k495NkHhXkyaS6UDhOCy34Rp5iyytyLHPja5I2eF3?= =?UTF-8?Q?Kwri3gJs_lT5qNp1yCfO36Lu6lrR5WhKpv0nKlk4m2ib+IblcCWomLQb8X/gYU/?= =?UTF-8?Q?DMMGbEdOFMGCyC_2jVCSddlnHMLPuAei+R2R+otFLLJCYDPkEvK3JPjoswHCQ9D?= =?UTF-8?Q?bgfCSYhQXwsdk9mpt1w1_2e2M2EDR2PwESjl0hIxh1k4deWlP0uctvnqrxZ9Jtk?= =?UTF-8?Q?AwboHpopEtN3G1y6tg3RGuCIB8_isizFz/UUEgSVTm583BW5uC1m4yiE8Vv87kV?= =?UTF-8?Q?Cnn1s2Wf5+AyASZbt+Q77Y5CllhIQWMo_pg=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8p7k5sg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:55 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLM9MJ025822; Tue, 28 May 2024 00:35:55 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7x8q-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:55 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HvOswa/7dJxvkvcD03aw2M2TDOw7i8ApTyAvw+QZbmp0nxkDEeCJWnzBOzZb+O+eryCwg1nE993UPajdUZeqhrrXYZgBvc5+9pWasyjf3bTp2p99ySNu9OM0Bv9xK13kIytAvof2atUKOdzmMHoV8fELv5k6Jhih4TxkC6FAjK/4TwNOIl0wRW5s57oUD5XiWJSSSAGAq8W3IGCLeiwKWAz8BflUMGxXBoHQpEAcv1Z6kbckc9TL5qRDiTj8ozGJ7/WPUpTT3oBwmFzUoYDNz/24n/uXX5fjxcCPxoOWttf6oG+jZ9xTyD8/zGXMjxIflGg4I87L9JE94K/V86R+Iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=kLaaWNi1sPdgUoO/a7tbMOGsOKOg+5uFKHEtfG9u+CE=; b=RX6KjcqPurshAdcAvKluMCaRd18J8+dASw+EZBiyWYAa/F/X0dVIXczRGe6dWnYyiysw9XthyeHmcbTs+xQzUULoddMSzdgzm4JPQ8M6ODefCusDWRGDHQsRp2m1OGzVqCDEV7J49DS9lYZa3aqLtZe82KWPRtNQ3Yj2E4Q/3xKd3N+6+65rUN+xBamSsDlSdMV1po62BDYZLPbYgjsFsEdJ2EvO4ptszlsaulglzASD5TtcMR/wEgtX07bYZkpn5cLlmO/UsX9uOA9S9pgj9OKWQYXLUVjrbJQvV0YbXLOqVo3r2bwVXghNpnDMsiMd4kNBGfgRjFz8iKzhz04Kbw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kLaaWNi1sPdgUoO/a7tbMOGsOKOg+5uFKHEtfG9u+CE=; b=vWKQ4RR/TkpCoSbyMXAB5mm0961XNPeiLO0ZXeESAX29hlzRktXCaOn10QwvB518CbyGwQ/YGYo4p7ZC9VbenhuYSHEIdVtDri8Xr9W5fjlebZ0WgDOf0SVGNCZoo489U5pA1euzr5MWYEoVmqwL+1qAVuTGLKQisgSEfpfaReY= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:52 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:52 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Andy Lutomirski Subject: [PATCH v2 08/35] entry: handle lazy rescheduling at user-exit Date: Mon, 27 May 2024 17:34:54 -0700 Message-Id: <20240528003521.979836-9-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0346.namprd04.prod.outlook.com (2603:10b6:303:8a::21) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 2882bb66-1f03-456d-e94c-08dc7eae211b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?tPdycKowL7vz2lRVAWL77mdCNDXuoLcLyE6vzPsr2/pjXwLZzz4X+CbDEFSh?= =?us-ascii?Q?gL7dmWnOaMeGOKecd0yDYXjoMkwLACfIsIpXHXFO5ioJUD5QpCV20qPZOj2L?= =?us-ascii?Q?MtvHSPT8RSNu9fkkn4RTa4JAytB7ua/44RYNVwkP+vijV4wg4UVzi97o2Zs3?= =?us-ascii?Q?gtumlgGdUGnZa6DTh8SLXjh9NuPBtxQXAqfhEyr/WKAlVjfoO5QRx+ki5m77?= =?us-ascii?Q?bhIlI4E4kJS3Jyl2hOCzHzlQ5EYTml97MsdjfAQMH2821JobXIiJ7jlb2Bhn?= =?us-ascii?Q?g9Z1321fclmE8sVUhmBWuOQZHZ6/ap1dNecPjdwmenhul+Qfi54cB9j+nnYq?= =?us-ascii?Q?9fA4ydkoaO+SrpLr3Aj+IRf1uY6sLxez61KGydJYYHh9pNn19PLS8PnXA3Tz?= =?us-ascii?Q?UsiEhK6OgcgzZmp1hPEmuIPrzPElxI1+/74YG7E7Bl6b4lQpdRznq7ec/1jn?= =?us-ascii?Q?h3VC5nfqgNvcYFmVcVv398AzWwsEGiV/IBb7suKwGEOjNCkO80TCUfNPWZcW?= =?us-ascii?Q?52Zi+oCXBCUWaVeAo80Cx6Sb7RoFaTZjIIMXT6hieTwjIzXXjqaX7rf34yoN?= =?us-ascii?Q?mh0SovYbksYZqH1PG+qCkjd5bw70OmStpblpfQEnpxgRpsd4s0IW4rfdwdfn?= =?us-ascii?Q?b0q2ZiZI+/97JCY6BhTDr+WhKbnb9KQKnij2FnQk1naaFtAVcjHx3E0PqSVX?= =?us-ascii?Q?KEbWx89LSZcI4Xf76mPBk14Pk8iqFOUPjyUK13an96P+j1eVHi5UbwzyRcu/?= =?us-ascii?Q?RRf5BCZSen+MYYfe3E1rBcUCYjDydlJO6/iV559PKzMynlRsoW1OqteHTl1F?= =?us-ascii?Q?sSccqAoFZvrE8sMSPSczV8PyaOd7CW5iEo9PiEapN1jqguZz7j0ZHnq6pLHo?= =?us-ascii?Q?e4r8jlbc7w/QxhyVdQoIV7ymIw8Q52QtCq7x7UCho5QAY3BabFnVBQNStPnE?= =?us-ascii?Q?wqjakK21Kap4kB6KdKfbaVo+MizJSqByYEKZq3hi7WV5GNb6aQ+rdYk1SHrL?= =?us-ascii?Q?oJwlyhQhuGBKKX2TtOx/fVczXdeEgBHKbYOY9M0yvQ6DS3Nh8QG95GzmpfZB?= =?us-ascii?Q?ZGxk7XJJ5Wn+BMZOom9BPhf5QAJyf4LiECGquSHFpjFq0I70nz9L28tffYgA?= =?us-ascii?Q?NMVvCXpP2HmenRhECATZ48jn8nx+w655VA7t5V3rlATOdYaD68c/Ce6miOjC?= =?us-ascii?Q?bOV0m8UuYfMZfAexafQAlccW0AxhyBWpSZ0DQy+Srznt7sMriSUdbNVBKqc?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Qqeu9Zwah5sFO2yJHHQijEhol+C+ruuVZ/R3XqkicTPhqv5nGN7YrpIm+qZs?= =?us-ascii?Q?z1yoCPrXyPT+A4WzyDVj2KtGfIWP9k0ZzXohVSInYj9Y70TvYegmI6P8ykqt?= =?us-ascii?Q?Iv5yTf0v0df3HZu/7hHGhOFp7GVUisDXAYkqLxW+QPkx01/422FeTq5LHPsx?= =?us-ascii?Q?iQG3dvPRjY/7EP68qVlWN/o7HWKLcpDqaFkDeAK2ohwkEi+8lZYC+dGfAc0v?= =?us-ascii?Q?LK+sm7dR8wEQMIQkuGozirdRWWWeX9vcpBzD0DljzN8iJ/0pXCEQvmvOfyJY?= =?us-ascii?Q?LWK9BMzdneN0tWxiN59Y71iTLZfV6koD4vT+uiV0Cbzg4Q2xkeZWDp0vJ4lw?= =?us-ascii?Q?elhFcMrahiY0IhoRNZooLdpBf+lb71E0nUyG8/0WTdhfIHS82aX/ecoZiZ28?= =?us-ascii?Q?7LHa+TBOD9zq4YZD19LKvHuKpTqmJuMuNhURhK1DapnkoP7dk/UBMQ4L/3mn?= =?us-ascii?Q?+1KDjDOym6araGXvdL9n0QGky+HIv3bfC4BEC3IsSBSxlTGbDc2b3e59CKRa?= =?us-ascii?Q?8CMHRp6INWj4UtUOZGnTAI2XjNh8sOGX92XGiP33L2ln0uQuAnYPvLrkB9Ih?= =?us-ascii?Q?8ixknWbp0ijTH8yogIJDWZh2NOW0dDssoVbSEGjZvLnBKbaK4gHcU+7TCnRX?= =?us-ascii?Q?V8vBxol9Hk1Np+GknNG/UaeP9Ory1V7fUouyv1ljvbVw9gidssi+KuUgI2Kb?= =?us-ascii?Q?XJ1/+9AVPalSGmcHp9jspfDhVw6hkCyIEMrUrEwIw0HrdNy+qINFoz1AtyuJ?= =?us-ascii?Q?JC6fBj+gz9q9eatUcXR8/VILr0+fIXlR/W5UDFY23Oby7zg8qkkDM8D7syjD?= =?us-ascii?Q?Dg66tOq7iosgclAZ6bCzD1Zn/2ojbTm90B4SQRMLy1pHDBOlfj+6CCoP8gEn?= =?us-ascii?Q?86qsCJW5Iy1Vwbe+n1CnthsrNiUTLtd+KBVj6IreC+VBAlm5RtFCYbQ297kV?= =?us-ascii?Q?WaZgCyd+paxW9LdGmaFbEltoEJdxQ8opelIxktiK5e6gQ7iNCezlVKfz6rPk?= =?us-ascii?Q?4a4KDvzZs5T9rUPG9bLrtBkuhq1sDhFAIoz+QRrR+rqHMMVDPd83hXE3YAk2?= =?us-ascii?Q?CSJV3N0ADZxhcdNwJZD1Sq5R4SnVAXwicBOAEg3S921qR/UJTpevaK6QH8a2?= =?us-ascii?Q?5iUepjBsoduYlg1sKlIcSPHGghc0uRSljuhUyslyfSaXwUQKciZi2iAQ2OGg?= =?us-ascii?Q?1T/IPLOdurgzIOYZcle0qHKzjEvHFcdeNSNveXP0/dWSOD2xG0yy/3IoCbh3?= =?us-ascii?Q?WGhJhrtIod1R5OcGpWbXKbAV1UY8BEMrWnxs1sZog13K14GYyNpcLUBpTIW+?= =?us-ascii?Q?sj7fkEd5PJEb36GiBjq1uLfLosJesySZMSX/V3H0Lwen1TxXmvu9Lmrdp9+S?= =?us-ascii?Q?Ksgu2l4pe1Qmcp7gYaxfdsXKHyHXCHWitNAQjhFP9Wg+qYkp1h+tzEqM7wOJ?= =?us-ascii?Q?9HtsptiYQOtgRNUl3ZZcNswq21zCnoE4X1c8GR4o+X4RImtgWTRodR+ZEF9A?= =?us-ascii?Q?BMHN/iiYVBtJCwluFNzIV2E2q/f/cov+YO85SL7fPXk0fKXeZ149V8Qkuej5?= =?us-ascii?Q?7IbKWzLYrrI5wmeKK8Jl5mG008gPZNPbM0I5UMu2uuW33qcngrWQT52vu9gd?= =?us-ascii?Q?RQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wcANLd2djhZmuPgZytLKN7mI4bMsmrGXV02O4V+xZ3CAKewTX1fqw2e+0S8ZQ55yYE35mxHGhChLiVbe2AW72mqzQk+KkdaQoBlAiqal2DHr03tmwoTgfumDvRCXui5XNYjTUDbLe6zy19C4itsucOH73c8PlkSaf+YiYD4+o9SoxA18htKtQTdKX9yj4SBm8BM/HDa/6DLWVMwtspi9kXEd9q6OF/4I3ZYzrM4BtJAeB6dG2XF6SLMuMd9dO5WfP7KTSnuChJRmqWlW2a/bdgTp/BTyFZbYVJlHKIs7fP77TcBSVVFQ2ZEEFh7nLq+J6rMGc1yif/OMUiIMW90+mrX9ZIoEAxdI7lzXbFM2MzPNDNXOTeBVuibqxoNkrsXFF8hXBCIXqHOOzU+HuGkD2aJODHSq9b/6PUFRFhPYilZ3vJTgxjvhuA8Ym/QBPNzqflaQYS1YPvwvPd2PBWCbcVLBKxXa0bn+NAG6htZJHwkSMmgsVA3My3cyk9rjn4PiTZpEOezS1RuPXnrIqO2qxiYmgFzce+YB5LA2LR/zLLjkN/s6C09lqioWeD0gdnMgOByBj5pPYsCvTF/1H1g6SvaaH/LIIoUJEhlURP2MWRg= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2882bb66-1f03-456d-e94c-08dc7eae211b X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:52.5419 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x8vCoL+2h5XF5+eHswu+KFTB31ZgQyaU7xQDM943slH8OvRDV28ChlR1+PuBs9U/SrkPqa5OFDMqjc2ab7xHIQ7OzmI8Rw9ImXSg3/1suwc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=812 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: 4rDj__0LxYdJV7D2HWdPcQU-M3BpC4v6 X-Proofpoint-GUID: 4rDj__0LxYdJV7D2HWdPcQU-M3BpC4v6 Content-Type: text/plain; charset="utf-8" The scheduling policy for TIF_NEED_RESCHED_LAZY is to allow the running task to voluntarily schedule out, running it to completion. For archs with GENERIC_ENTRY, do this by adding a check in exit_to_user_mode_loop(). Cc: Peter Zijlstra Cc: Andy Lutomirski Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- include/linux/entry-common.h | 2 +- kernel/entry/common.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/linux/entry-common.h b/include/linux/entry-common.h index b0fb775a600d..f5bb19369973 100644 --- a/include/linux/entry-common.h +++ b/include/linux/entry-common.h @@ -65,7 +65,7 @@ #define EXIT_TO_USER_MODE_WORK \ (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_UPROBE | \ _TIF_NEED_RESCHED | _TIF_PATCH_PENDING | _TIF_NOTIFY_SIGNAL | \ - ARCH_EXIT_TO_USER_MODE_WORK) + _TIF_NEED_RESCHED_LAZY | ARCH_EXIT_TO_USER_MODE_WORK) =20 /** * arch_enter_from_user_mode - Architecture specific sanity check for user= mode regs diff --git a/kernel/entry/common.c b/kernel/entry/common.c index 90843cc38588..bcb23c866425 100644 --- a/kernel/entry/common.c +++ b/kernel/entry/common.c @@ -98,7 +98,7 @@ __always_inline unsigned long exit_to_user_mode_loop(stru= ct pt_regs *regs, =20 local_irq_enable_exit_to_user(ti_work); =20 - if (ti_work & _TIF_NEED_RESCHED) + if (ti_work & (_TIF_NEED_RESCHED | _TIF_NEED_RESCHED_LAZY)) schedule(); =20 if (ti_work & _TIF_UPROBE) --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 8ADFC20309 for ; Tue, 28 May 2024 00:36:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856578; cv=fail; b=Fu1ypABzXn+eSUHMzWYg+s4QfNUbrabLdBv2cCu22krW/HsaaRq0rTOVpSNkB3Lkd9jXesJkl58rGVIiVAZWlh2GpbNC+2V0Xc41wqh9AVU9J/pEfWx8IpTrnjZBcRcvAnyT60oe9Ja1UA4AiH9MFkY+/B8CBDFmw8jJ/ymafcQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856578; c=relaxed/simple; bh=L84gfAYQ81E+gA8uIm1JdV7lY8twisDRcCpKSLCIelw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=MXlD+kaXYl71Sz2EmI/i5Bl5j60xMwph8f5X1/L6sjIs+wYtuAbBKjM7UpRPLMRcS8nVj/6zISNx5THBkpTFFD5C7mVdw4zG2Wb749olAfOCdAtzKGA8lSrny42fOuvKVnMCxGboG5xX+YaBZeSL3sMuXayvXIoJR8N/dS+oQa0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI4rM025170; Tue, 28 May 2024 00:36:01 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3De6EiB3lC+Ersv7Mw7KyxtkiBTvGLpqTJLPo7B7DSKZk=3D;_b?= =?UTF-8?Q?=3DlZa1BTBcBdI+8QIt60DRzeV1DM8ZaEPrKmlPoeN7SRD3kYi8hyk/qVMELZOM?= =?UTF-8?Q?pOeEccab_4cuH00+ZapKvvPeWvZMly1OZ5udYKlzlBKfemhyMuFYA9HE6IvKhKa?= =?UTF-8?Q?7kZkZRTULaff/f_e7x6e4WHN1tROaCPqW4/2mp1guCrc4pNPSmOfcP9qF/dZ+rU?= =?UTF-8?Q?aqbt670LoTRz5QzJ2Ccx_C3NPQIr2B3rLEBJL+zmwk8cD183TBZORPx5nRbm6vB?= =?UTF-8?Q?faeOH7sJ/PcLm3QEKqD4bOL6e0_gwFaQ0xz6/ldBdS6GZC7vEuonQ8Z6+opZfm7?= =?UTF-8?Q?cJH2B5V+zs4ZCECLpW+4Bi64bIqIT49D_5w=3D=3D_?= Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39ba-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:01 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RM3W3C009302; Tue, 28 May 2024 00:35:59 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc52agc6f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:35:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dgxr1hOmYtVBjr1wjZ+bktsvEaiofWIqB6Vf1JjEyC0GrcTkH6Pfs2O+zJxq8BwhKaPToAsqGiRIDUyd2CtZKf6kUH4XeNr3EWuEv4yqztaF0wUaeq22eacO66Auzv4DrF6PHMNTNRIiB7N7aKdEIWnWgzfxTbTvbGXlJerx7dP1a735k6hQrylZCYKU4pjYDhMI9owE7p0uV15wP6D0vby2kZc+6LFlo1qH8rPFr3AZKOD4ox7f+eLjqka4CBp2nLbdkYKJpZu6FUIFSW6mGYzSbOoS7Br6s2diqWYfv//0JQ++PllE0+wraSj2+VKiSF47hJOr92yX5UeJ5KSJSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=e6EiB3lC+Ersv7Mw7KyxtkiBTvGLpqTJLPo7B7DSKZk=; b=mR5NlRC5rt5TgEF3HAjEOuGLXfHR3tGt6I41YEtzNbRWCVt4jWZhy2/L9GCMGqqwpfp3E3yJ9+AIrMYxhKlk+tnSJuwiEKuGCjkb4Rp3eR+8LILlxAGkkbCsfBqkGlDVAhhZDvKeETok713+5J3SLSaSgCERSkBdIiJ3UcMRVN59viIblxiUPVPtElJv2Hl2puTOlkeyfPLfEGp8sOREObl/22Lq0fujAVrhhSUW+iN9LCgbLhv5yjOO47vmZrAdQjQnm4BiqtsqmUv4MhDh9wMkbC3lbbOJUWGXXknryoZg6bjbq9R5V0Kk0lAPyiKSrre/FuTrXxoq+OQ2lTue4w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e6EiB3lC+Ersv7Mw7KyxtkiBTvGLpqTJLPo7B7DSKZk=; b=OAf3LG2i4BeGUc3Df8N3RTWmgrCFmJAMMK9bh8z33Dl/QUa8Hp+zjzEVtGS/hl5jSQ8nOJv97YaJ0TNGgfObPzj6sJyn40tLNcoKc2kPCi+KPQHuOTOd3Y6QxEOB9BFKHPozvFNnbdmMbzMDONlot5i1wTkZMQO6hkWNn7mUjeM= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:58 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:57 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Paolo Bonzini , Andy Lutomirski Subject: [PATCH v2 09/35] entry/kvm: handle lazy rescheduling at guest-entry Date: Mon, 27 May 2024 17:34:55 -0700 Message-Id: <20240528003521.979836-10-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW2PR2101CA0028.namprd21.prod.outlook.com (2603:10b6:302:1::41) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 086defff-5018-4c6e-44c9-08dc7eae2435 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?qf4kaUUOD+iKyEx8r1SSFW9baEa8A2RdaWrjsIObnOBWDXfvqb9ht5QTIQCY?= =?us-ascii?Q?gl02EAus1i6Z4uKF0s5b+UeZvsZSuLqkLFopM6TBJLckSz2FoKecZmSn2glU?= =?us-ascii?Q?S8baiAzluk0M/xIiOCS/35OIaWqKJyVss2aPOVXUuF/RJKREgVkYuAtiQ2Y+?= =?us-ascii?Q?7tQQQWyczEEml8WFXGtz8Xgl3Srr5eQIw2zJFDzhP9gDcHvWwuZbUXyZXpPy?= =?us-ascii?Q?UFGizrqYA13FmMqp+7JfqR9apmnzIYbhl+jsblQADtUBM5ftLbPS28I1vIvS?= =?us-ascii?Q?La5a3Ngu3HbpDhsjDf+OFZRJVwPaYPpILt8CB5TpE+kkObvbzRSqD0A1l9+l?= =?us-ascii?Q?1GB65Rx6JseC/bVenHkOaCdMb3RaXTSXF5owny44vg1q4xuf3eNKITDEp0BP?= =?us-ascii?Q?L7OVtkOyuSNKOd0JeXZalSdztUJJUc7CGjuf3dQTebxuqw2OBioPZXZRc59n?= =?us-ascii?Q?vnDAkJueFQy0OwxuoaeewDhbvXsQ3aouKrMJBqhn5Y3ka54M8MBkAochIPRm?= =?us-ascii?Q?DswKnv4VwQBRxMPJiJoyLyNkH2pbBuA7od1ED6eNkgy5JKydkRa4WkaPsqSc?= =?us-ascii?Q?v1RclINEhsu1a8eUKZgiYvnkqqhUa1J6l4FeAKeuVk9csX5DckH40VCEf/dN?= =?us-ascii?Q?SlsrvYNImEQgOaiN3qjNUsnPTLLj7pxd3NXqhLCKLERbidlqxyn6dSPiUj3j?= =?us-ascii?Q?dAVO+x+Ghe7bfVv37k35xYZJpVRxDmx9JnZmfcrH3UbJpVKf6+aAg8tovY1j?= =?us-ascii?Q?uyXlGGlBrDsABLFuJJYPojISR4xZEUe9ooIlJz1voi7w+cMTyrzOIRBR054t?= =?us-ascii?Q?zQ1fGefqh/6osukKkOvoHeFzJsjCFOG2WBS6Ujznu9w+tfhmrc8Ki9iKSYRL?= =?us-ascii?Q?AFIJf6p1VgEBVv6CGgwH87VjKqX3Zj88a/kDaHGcDCa+GSFDFCCiH3JIZ+Wo?= =?us-ascii?Q?06ehaOuG6qerNBrOISv0yKp5em7TTiH6H2FSHEntBG4qadLkr7PMcaIiiFtR?= =?us-ascii?Q?7uB4lKf5WNPWMy7OLny4U8VO8X/gYRl7s1+AySrnsoTi4IGjzY4VecXxcRgC?= =?us-ascii?Q?ANlLSGkubAbFNZL/SoLwi+I8dHpbC5jn/qCdbbgwjELljVIaxD1tMGS3NAWU?= =?us-ascii?Q?8x/SPO3uSXctAW+OFPIb8Paqto+dCHaYjECWrRrOUQ6L8jfEYcDqv+jivNY2?= =?us-ascii?Q?sl4gbkDUx3xiTARlrVy1G0SWxIk2Q6B7S/xqyjm292rMZsqM1iDVduK1WTA?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?O3xl6gNLUH1vXnnNbT4ooA51yMWyZfs0godikMA+d/ytFap4Xkr779ofZS0U?= =?us-ascii?Q?0ujwoMgul7HKptMuHIN3rPc4YC6cyHbcux/w2aZ+Edkgv9U4+lBb2amd25WT?= =?us-ascii?Q?hZUmQq5b1AITfDdGemKdHGFQ9wgx7h3Yis60nA5f2Rdvs2LNeEL+PZv4TIQg?= =?us-ascii?Q?m54gPSE6gLWxYlOLWkIhkth4EPeXUuIVeGFnQdPGucDZtDF0Q1G7AS54GUue?= =?us-ascii?Q?oXHW7iI9Jc+3HKIskFa5iFUJU1wMp5OJN2qhqElTfXuvgJs7oakzub5EjLYA?= =?us-ascii?Q?JojSfHxu9Q3c8L/xF0HwNAqJX7iaIWnB9AdtoWJfBp0RqrM3lEZvUZ++8Lji?= =?us-ascii?Q?JJmJn0oMvkktgOzGUM86uBMJAa2087iGg0N9fyPkRRdW3AMWkXi/nqOTyrnj?= =?us-ascii?Q?CDHm6LZTH3P8SQxnWSe5NF9nkNJpaLRvC2svakum7BR7ISuEA8CyoFitW+PT?= =?us-ascii?Q?kD2gP58l14Qh8BqFiYW9bfc47OT2NwvJ1EaxEm22Stv8WJq5i82QtgnYlu2s?= =?us-ascii?Q?XssXWfNKMUERSARriB6suFQAoZzQt3UT5ONq19nrHoOR8MfwLe7fBmrZK5Eg?= =?us-ascii?Q?fDwkjXeBKhgRmSDcETofs3/6eXsbAuHFoEqmvDJ1BshuzNukoOCESc5vM/6X?= =?us-ascii?Q?pGF22HK3f70VeW6MWVENbdHROWRg3DDgy6a1Xw8jv2pY3cZoQWfuGE17koc2?= =?us-ascii?Q?SFkN+WzVXpTfuxvggjUMrG5ico7F+KsDIn3hlpfCz39eRRqLlpZSQBOifsYf?= =?us-ascii?Q?4XRzYLToio+BWYpWKlQowXGb4qF6fhIIZRautJFmUYZJJv+NjeDDLGm3zmqb?= =?us-ascii?Q?ycY9GoSu25E8oDYkQQ41AnV8XtNvQCTd4WVDrQRutAolj1t8bpvdgnH3uNYF?= =?us-ascii?Q?T8CYcjZ8a1Z+wKtUPbEK/byWfZZq6ldkrAaU3y8b9SmKFY8U8HGbQ1PZ4rL6?= =?us-ascii?Q?1Fpahp12hZtPJipa8c24loNYQbEkvMbdG26r96Idz2xLNKBW9I+ISY2SKLeC?= =?us-ascii?Q?dG5aEzQKO4Lj2g3L1GL6573dviTaQxY5j2kjOm9inTWE9MUDdZDU7gj9Tb5K?= =?us-ascii?Q?5lfQrUCXMGOx1JcTnF+mQmyJeX1DLRIOqVR73iXCDf12TdA4keF68OpW0CzD?= =?us-ascii?Q?wGAhajrX49VFCrOlnUAVCffKQlV0MhoxoWcwcH1Rt0EmVt4/i9OQixZIvm0A?= =?us-ascii?Q?Pc3elYE9vOoWxBYv0m2VUhAevbyly8GsA6wewjaQ41tOr9YKZf6knlgiaFsJ?= =?us-ascii?Q?g9WVK18NRQtzrAku9dblP8/O8lk8xam+q1flXtE65i+IvKm9XRZioOfCU1Jx?= =?us-ascii?Q?8Pmd4V0MBBCYMQPCkPOIq6lryafzN5jNctxnckrJlcaXUfJdjXIhyPOOyjKF?= =?us-ascii?Q?VCknv8i7QhKIixMinFngbgL3qPWbZIha0tYO5K4sG2e6pq/vpRwHnjw8AdCM?= =?us-ascii?Q?xfbUFIuzCfmm3ZwnErSJ8R4+QYTsQhZ8BFizU4s183hYfUzbrbebMAloM9V7?= =?us-ascii?Q?dCn55pnZRlTpuN2m0VTXR+QvWrw6XZpWUhLx+83433a3GNtf/9VK7zU675KL?= =?us-ascii?Q?mecphHOjgIsicaTWl8q9e28u/WqxkQLWnhcbM6VLmpWnTLVOCPe2jftI4seH?= =?us-ascii?Q?Rw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: rBSGSD7ZcoiwPqurplBJIFa0FjTn0EjAYQUJVAcI4V1xT2KpQyga4uzd13cWYQD7i86mxe0+bJ7xr3dwAP1BxmsjPBhC/CvANjFpNNEoSr96wwv/X6Q/YjZ4TOaH2Z/+lSE8c/+6dRiz7sCI/lgfs8kznDkH9vNl1FgdAOemzyh+yI1uaMn3ncXOz2nKwXhk62oI/r6IsX8JSBrXwuzf6jz9kc1mSdfunGhtoa7l4r71ggCPRDiHXtYjVJRWfQPdzgaWIeczzCsjBblm/Zktsei03Fw37tFjiJ/COdEpkrwWmikK8XMEDkeg6+BSzGCjn5mJIZm5qHwL0GU8Px12mK/ZUU5fIldtAc5Z6T5sttnfs+ukYDlZbrMSHyrnV3Ft0kY5aMWIBil1q1fdvUvUxXJlsp/q5Tax9C84PN3aWfxUV3FKTgMGiNGC+kGPROL8P/UuFyDbRiwT1WmYE43GRz9Kkz1ClqBzxyJNA5uEJ271r4m9pGaADXAQ3gs0TXtOvSdGLMfW0FmmITWbvvoxwIjnO6mgGtprGCXdh4OnoQ9S6cO/cmhlhtcCOit3SzOiQhBDFBayoNgN2CbjxlR1frugdwUi134b4vWTXZqZyHE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 086defff-5018-4c6e-44c9-08dc7eae2435 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:57.8455 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: efNiwVArlxJyzHw4PJE4QO5z7zruHCXEk2V11ivEDejMKq+f1Nv/L6+elOaU598BHUv6qJXQNWAgCC7T4u4JrHVEP0sD3setcDiilGdmdkU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 mlxscore=0 mlxlogscore=884 phishscore=0 spamscore=0 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: dPSxCsbDjJCKs0Ud4bFLwQjfd67qmqL5 X-Proofpoint-ORIG-GUID: dPSxCsbDjJCKs0Ud4bFLwQjfd67qmqL5 Content-Type: text/plain; charset="utf-8" Archs defining CONFIG_KVM_XFER_TO_GUEST_WORK call xfer_to_guest_mode_handle_work() from various KVM vcpu-run loops to check for any task work including rescheduling. Handle TIF_NEED_RESCHED_LAZY alongside TIF_NEED_RESCHED. Also, while at it, remove the explicit check for need_resched() in the exit condition as that is already covered in the loop condition. Cc: Paolo Bonzini Cc: Peter Zijlstra Cc: Andy Lutomirski Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- include/linux/entry-kvm.h | 2 +- kernel/entry/kvm.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/linux/entry-kvm.h b/include/linux/entry-kvm.h index 6813171afccb..674a622c91be 100644 --- a/include/linux/entry-kvm.h +++ b/include/linux/entry-kvm.h @@ -18,7 +18,7 @@ =20 #define XFER_TO_GUEST_MODE_WORK \ (_TIF_NEED_RESCHED | _TIF_SIGPENDING | _TIF_NOTIFY_SIGNAL | \ - _TIF_NOTIFY_RESUME | ARCH_XFER_TO_GUEST_MODE_WORK) + _TIF_NOTIFY_RESUME | _TIF_NEED_RESCHED_LAZY | ARCH_XFER_TO_GUEST_MODE_WO= RK) =20 struct kvm_vcpu; =20 diff --git a/kernel/entry/kvm.c b/kernel/entry/kvm.c index 2e0f75bcb7fd..8485f63863af 100644 --- a/kernel/entry/kvm.c +++ b/kernel/entry/kvm.c @@ -13,7 +13,7 @@ static int xfer_to_guest_mode_work(struct kvm_vcpu *vcpu,= unsigned long ti_work) return -EINTR; } =20 - if (ti_work & _TIF_NEED_RESCHED) + if (ti_work & (_TIF_NEED_RESCHED | _TIF_NEED_RESCHED_LAZY)) schedule(); =20 if (ti_work & _TIF_NOTIFY_RESUME) @@ -24,7 +24,7 @@ static int xfer_to_guest_mode_work(struct kvm_vcpu *vcpu,= unsigned long ti_work) return ret; =20 ti_work =3D read_thread_flags(); - } while (ti_work & XFER_TO_GUEST_MODE_WORK || need_resched()); + } while (ti_work & XFER_TO_GUEST_MODE_WORK); return 0; } =20 --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 4F085262A3 for ; Tue, 28 May 2024 00:36:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856580; cv=fail; b=pqD6fV7YY1pwJDCVxq7sk/WHOYU0o3c3bnUgQLw00v3Bteirsrx+nQjR7ZTcrwpiAAIUgY65PrZLgADAwkEClo+2LXtExjkToRCVewMR20rZznEN7CJ61I8/SELcqaBSBzWUN30v5wwss/Dm5a7vnTgCaTEiy9dmLu9Fo/Jmr2M= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856580; c=relaxed/simple; bh=VmkLbzlWA/qTIXCG14/pcRkneOQKGWF6KF7BWv+wyI8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=Gxu2iSHJQHkBUz38rYjEJ4eU6IWj6awQZOt7Q/mEFr8ltYnHxGCsDR6zq4MgWtIRZY08NsvPqDMj4ZShCIb4/8lXm6agsomqReAWoBKhG85jrvn/WcOwWCtEQJy0bJRxitwhPDcF+tLN7CvwGbadh6+DLnGV51zUtR30L2x0qtg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RH4hwk001304; Tue, 28 May 2024 00:36:01 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D+V+7fdimB17QSblw4cjr+lj0G1ZOiwMo/hnJnWcIzqU=3D;_b?= =?UTF-8?Q?=3DLhdO8RCGY357PvrtZIAJ+/qUxeMiozt3ZaPJZnvNCQJQBAQ7Vc5pz1ZPAwNZ?= =?UTF-8?Q?8UkShcZt_1LyoJbv8eXNjnuH3yJI3wFuYWkg+i36YWjFQkc7KPJXZRiseUyifXZ?= =?UTF-8?Q?JmWO6EKL2C/PWs_xH42OFo2F9jrdk9dJyQO4VHYnUPDK+cES8Petv8IEMLVrc8v?= =?UTF-8?Q?B28NP32GqAKk6fLZNOLn_4rZa1fX8vzp1z1gUvTGksQEBKzxJoQ8Q+JTNOExq6p?= =?UTF-8?Q?QKYeChRxDoD8aLLEjQ/Fwic8lU_JKhOvb151yGYhA6f+OZhA13r0jcX9ArBc+je?= =?UTF-8?Q?dy0l/WEGy30j6azHxP42YvzV8t8bHOYX_kg=3D=3D_?= Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g9k8w3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:01 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNjdAM037233; Tue, 28 May 2024 00:36:01 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2041.outbound.protection.outlook.com [104.47.51.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc534rdbc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cSkdMWcHJUIETE5JzRvGCeJXAP8zefokncmxqoOpXZg31OQy39/Hgf/EufbJQ/9QKf9c/M4c2tpEyIU2wqLNuH6j49Tf4lFIfbbjPNl0Lw2+ipYKbMVtuc2GTwLBckHTLGkUdLVNrF55OgSeZDIF/LPFq+VQo3S7HIaALQpMYdgX63N4PJqKamgUmjgWro6l730cxThIDIVvvT/lBL0OF9Zj2o/7aRQLCs4nC9gFmjEHPZFqQkGwL7Vbbc0A5qSuTyeLD04lqvfR6TUj9BRwJB5JVt+XI+REYE79VWoKVzlymm9SUHWn2WxiLzw4tC7ww08nxfg0AfyZB4/JkYKO8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+V+7fdimB17QSblw4cjr+lj0G1ZOiwMo/hnJnWcIzqU=; b=BzgrOEL+MyFv5khz5H9udUU/YprvHiHALzFdKkPNTWrt/m6J04ubjTNrX/vsiIL3Dy8o9ufviPuQZOE704z4/6nftBRvisImAuIVvJas+SvdiyJqy1lEl2shrvCDe4dOl/1g/Xn+MFBTqbU1zvsAnvEdhbCKtCmuQSnBydYBrxmtmiblLOIE3kDGftod+DuEHcM81NhWiK+UUNOfkfEGNbdeZ6C8XBuNyCq/mn6vMTxNTmyJjesJtXvzRnosCje8GV+Ecn5hlLdJgbbE7uyyaxl3ensA3A0mYfbQ/uJ39g+U/aNnLmvn+M9uA98NmHGUHS8kkFnASgdjmQk4cdsBsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+V+7fdimB17QSblw4cjr+lj0G1ZOiwMo/hnJnWcIzqU=; b=J+MnYnt35e/fhYrTk1x5J6i/X0gYNIrBw5iSN1lwWV59vqXiRPfGul6hvEF98AN2dEYXxtZnljaTfAkigtcS6G1XiLhM0B21SNTheO3Tf1afFjl1e9JqjqJxiGa+1tvGKri7TCiD36Iv0VAMlKTi5TRbi8ETrWqhh2yZlkn0n+s= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:35:59 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:35:59 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Andy Lutomirski Subject: [PATCH v2 10/35] entry: irqentry_exit only preempts for TIF_NEED_RESCHED Date: Mon, 27 May 2024 17:34:56 -0700 Message-Id: <20240528003521.979836-11-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0181.namprd03.prod.outlook.com (2603:10b6:303:b8::6) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 1b4b4bf4-b1da-4235-8bce-08dc7eae2523 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?A0yzyydtlhmHYDT/HRsQJ2aepE+gYAZ2+mwkY+1HoN4S74KxMjvj0DPZmaSP?= =?us-ascii?Q?y6s+R91aDFxfEFeIbWz/WMa5WKov4K1RS9l4KC37TEe17zOHhvFLsh+Wwqb9?= =?us-ascii?Q?cMRQr3UBeIUgB4ji87BMgPtNyUN3BT0i5QY53J4OeUX12Htb/IDUCIlIlPaW?= =?us-ascii?Q?hwKx98ALtANTTQeF3SZdW9yJKvFChlJvhJjEziysNHG/qbZXIvSic7xkiaBq?= =?us-ascii?Q?kXSMuxEZYCJzAOx/FTI54eUdLhGU6iWatUqLASm+b71WABzIzJqtXEDPZJKP?= =?us-ascii?Q?ULbHR3Lw4Lc/jzRUP5TwYYAhYuQx4t3E4bVRe3ICsuzPKXYLBNPqpGiVnjCT?= =?us-ascii?Q?PfftBj7pwTh/bVcJztodtSph2hVLZNfwPhu07AzYA9CnMIKYTrYvsTEA6QLj?= =?us-ascii?Q?mMVQ6cVouCNvVn8vVzhMkhmAnEtAnIXGQsORLth3bODpNMsaq0O21PBWUbvL?= =?us-ascii?Q?+/J3lU6hOcy2BdeEiafSjw1pyT5+O3FUj/Vkx+uDlaYx3f2JAMUo9CACR8bY?= =?us-ascii?Q?MwNi4VsCxiRkPcJoB/c2Zi1Jm7whKu6CwVak8gxlsvWsj3NAKaIkv3TMbDg4?= =?us-ascii?Q?bt1yV04JR1n2HOmw4y53myfUjKuNgKQSkhewscx6/ahoadJ4s/siqSGr0RUu?= =?us-ascii?Q?6r6bbX+noDgHunSUcwZVmkvkZFhLeuF1Ip5p9R1e4ch6p8QOBZW+2cX1n22w?= =?us-ascii?Q?LGVy9XZDLCr3Nchqth2f9SL7Nmtv7GwrghAESz+6v0f2tUFXTPlaD1Vqn6Ed?= =?us-ascii?Q?SZMULefr+sDc7QRD+IvIsyOe2nG4cFcpxdK6t0Rd2RbSr2hv/aqdr9pRK+w2?= =?us-ascii?Q?6RqNxhWCUb+REaUh9Im8Iuk94RcH75VsWkB5pqAM1+RWoDouLrW0yQMkMGP0?= =?us-ascii?Q?lZA2gpqEdkPrKx6Ic5FnNQi12p527RUYKYOhIbFxEEJb54muCBGmWkCjMEub?= =?us-ascii?Q?O9WF2ylXQmO4S1sgFqmswW0xUkk8CDbvBwqS7wVqKAVjcyoD6s7L8rXUuQnp?= =?us-ascii?Q?AhpUvG6vveFDCt4S6cEBu+IklavuGyEoNK0kDV8QiJqdws+ahjzQLFFHgrjj?= =?us-ascii?Q?4TiqUPl8cw7j8dnMiWEWBRF2zfNObS7lNsyG7i2mLoQm+O9lB32jyWgWa/zR?= =?us-ascii?Q?nb95WToWVdZfYFCLjCUokuDd8G+nQc1ciulvI5RdzTZrkF6FTfOK5Ek4Pc9W?= =?us-ascii?Q?j8HYJwdpsV41Zyr8s2uVJNINgBL0ZfvGXBzw/TxM1EpG9aEs4S3TJkwt0MY?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?HnmjtQeK88C6TOMg/QPP22BBZEJWJE0pNGcVO5SW2BTgm43d2RR82MLFXS5Z?= =?us-ascii?Q?VFr2vSOZKOD7BrdAFIrAH3IHRwNAMqE/50IJ1gNt0Gn7+SS2Cm7bpUE9Eugy?= =?us-ascii?Q?MG1jmaJBo2RH+vDEUqPl7O/Kz9yOjKG3OrNCfVpo5DvBKgV+lSZp6Cme9XtJ?= =?us-ascii?Q?80k1vMx045U7z9eHdprae0OZWiySuOvB2YRqbx1tdNwIDS2HxL5eaab+jEgD?= =?us-ascii?Q?FQMSe7crautMmZcEAiT7HhNfa7LdD64b8cchGruG5k/ySYjwj3uAerK5wcaP?= =?us-ascii?Q?Tk0FSjPx8q44TFnLI1jfFVfgRmL0HusZjA9wJUOKCnLAPs2gXgNk3mlpsEU6?= =?us-ascii?Q?JTpO4gUzId4HpCTsdCO29wYVCS9FLKwecTfG5mC5fIHTWsxyXh01cqEqSewb?= =?us-ascii?Q?LxljnY1Nk1B1Zk+G66JoX0SvVXtSOs8YBRpQQ7wZnQeDIuL/qzE92/yY3jgV?= =?us-ascii?Q?2AinuB7NfNlmrGWVintwCu3gDhcwmJINQUaVN5MqAVo3TFL2Eqek/98iYmQZ?= =?us-ascii?Q?xAQ2O0FA1tqZO/etTsbuwsZvQGGo6QUK+9LzS4u9dcnb+gga3lhj7uYg3wjr?= =?us-ascii?Q?4j4PhhLECIYaTO4kS5GjolFDnfif7WO/8fvm1KLvxO6uVoBWE7TX5WVHfe7y?= =?us-ascii?Q?KW9PaPSwbGGE/kH5DC3JVcl0SuzDf6rl9knLYyjydwB3M7OXVTqCTiAfYT2P?= =?us-ascii?Q?rpgJySy7YYgFnsCW5lgmSP4t8GMHpx6amMr4NnixBeCtDtx5DUXnkWxsf1+1?= =?us-ascii?Q?cDyzs/ReiecS9UYx7tNRO/smNShr+JFPmqj5++EFNuWUeX3RosGJV+h805Ce?= =?us-ascii?Q?bIoMv4FIFasnp6fJQOlI+EawaGQ6p7djV8sOqbE4B+klB96yjt8qilpfNRSV?= =?us-ascii?Q?4Lp1eTSWVPF5qqjh3bzJTEpiuD6PIK3+9KemJA1x9/9vTjBeWE7VNgaede8F?= =?us-ascii?Q?I8TY2df1HOQGAuK4x5hdhri+8MwukYgYLRiQ62rLqhFswKfXZKyRzQaZcGth?= =?us-ascii?Q?XlYM+4zfpMhs66ZHVJ+U+BTDg9t1uB/CVzOjfnK8xhRdQs4nBhkCvAsxsRvs?= =?us-ascii?Q?9QsLkLWBPYwyw2cf1MFXH5+mqTmNCQr3FtjRzYTRsOiY8Lf/mZRC23rBO7zL?= =?us-ascii?Q?f8PR3GaEBD+Q68mx3ir4OWLvUid+Y7hKag3gOnRQHBfjh1xi2TYGho2eOa+Q?= =?us-ascii?Q?CaXJ1QJpmwBF8WhLpmt/Kdoc4EuE5mciL2+ZpxUW+60zfnb6IVOrxNuZ0Xc9?= =?us-ascii?Q?O7RjtV4NUm6J3rapodyUWJebQjhBALcK3ku/RG2IcnWCOiLnRdlxvb9dLdNX?= =?us-ascii?Q?sauUadQTCO8afN6YSzZBrACMjHoNlNjc6dVBbm3wS93SkSSO5LtyVRV95db1?= =?us-ascii?Q?1TGepJcJCN6xMF7/cuNHo5kZboEZHcocHmK/kAq62iJmLw7A4g5diGu0ZR+C?= =?us-ascii?Q?AFq8/dXhQBrM45vSw/lwILY2lGQtAGfUeutzGflO0Z6TDN6d6cUCl8MFph1w?= =?us-ascii?Q?qPHRCG2P8hGdR5NJQcYHnlLORjZtL9k4LGwfKPgBfjKple6WuNz4vEEkszuM?= =?us-ascii?Q?PaHqDJGHL/jbfKjt4bY1uiuULeGB54+VAuE79pTMtP0OyWV7mF9ZohBLhlVq?= =?us-ascii?Q?vw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: KSuxbTL5pG2AcH0aftIiw301v9mmnD/eYlGmHvmaiizT3XjCImLCEczuzkYYiM93qAeuqlNwrgB7E7S/3HWPJ+JGD2NLAiwoo6qcwwKV1wAFlzflC2b3QiGTq4roICBcwhyRqh+g/bkJBVFhu6WHpkShoNNX/U+IuyHCMyeb7XtKvVBqPASZ1KNYgwWTqNVHAUzkZe4f4Fs//fJCMqcl5+G1AEHFw+etzytK3zqfQQ6W/mpyk4oD9lEyFa1uSJdq+1LmiphwGo54FCKeWL+hA9ZPz7jD7NbtSg44+c2ztkOEgWenwak25MyRfFw6NNjdAAHoC0pcwqFGVcQjn5+qoMWykFVz0HfzTAmHtfzbiouPi2NUsztcJr+/BIvlbEg2R0F8XXwACT5gLeeZtl6rHwh/dBaStH6+cCq7+ULS2X87baDNbt6Kx7wbUPYi5NB16xt6+f4cvN+wEF1OvItrmD+1KIuDfHvZKyRiXq+qegkxQ/9JEEPefR9aUkGjrL9wm/U8z+fKF7hnNZjo38oNpgsbsNmMzbhR34BWWrM5ro/6AGNUjnFd9NbK23JExyFFoWFvyoraM2l8vuZuUH9Zta5knmr+pcrtuSfFr9wcOfM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1b4b4bf4-b1da-4235-8bce-08dc7eae2523 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:35:59.3117 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rQbUrd4HuaP5uUfz2noagYkczhQHcHSvjEkmaj27457vsSUHsQu9jOOgCWywMBheUMRYvad6SXisJa1sxl6XzfvX00cqRXB0KOPQQRrMcMY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: OKVxMMImb3nTxP1BJEIXQmRk5XHcL1-A X-Proofpoint-ORIG-GUID: OKVxMMImb3nTxP1BJEIXQmRk5XHcL1-A Content-Type: text/plain; charset="utf-8" Use __tif_need_resched(RESCHED_NOW) instead of need_resched() to be explicit that this path only reschedules if it is needed imminently. Also, add a comment about why we need a need-resched check here at all, given that the top level conditional has already checked the preempt_count(). Cc: Peter Zijlstra Cc: Andy Lutomirski Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/entry/common.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/kernel/entry/common.c b/kernel/entry/common.c index bcb23c866425..c684385921de 100644 --- a/kernel/entry/common.c +++ b/kernel/entry/common.c @@ -307,7 +307,16 @@ void raw_irqentry_exit_cond_resched(void) rcu_irq_exit_check_preempt(); if (IS_ENABLED(CONFIG_DEBUG_ENTRY)) WARN_ON_ONCE(!on_thread_stack()); - if (need_resched()) + + /* + * Check if we need to preempt eagerly. + * + * Note: we need an explicit check here because some + * architectures don't fold TIF_NEED_RESCHED in the + * preempt_count. For archs that do, this is already covered + * in the conditional above. + */ + if (__tif_need_resched(RESCHED_NOW)) preempt_schedule_irq(); } } --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 79DF4D272 for ; Tue, 28 May 2024 00:36:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856582; cv=fail; b=La8Iwh+dUiciRcx6aAhG111qQAvcZUut+8uBXmqDXdM12jNY5W5RN3Tq65DvGXMiuBDY6+y5ZyLko1zD+Z3aowQrpHp2iF3Sv2Nf2xQQfwOhg2BxuiG8IOPhznNKRiGB2PI8ZROCJrT8d/iXa3XNJG4UOvGHYXyjYRi1BkODR/4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856582; c=relaxed/simple; bh=XW4i8uTn8Fv2Z6JTq/pSf6/wJE1eoyRWuPRdMPf1aw8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=YC5Atty4XDuPpb0/dtAiNmKlyUgLmNSgMrsLRbb38sgazzapJGhOrXMJ2LL29Y32mWTVAbQnpd1+mxSztTG77poEge+oNKuY+3dGmOCUwe7hKHSNmcvPO+8JJ+M1bkMwuOd1GCiUclHrWqKCyLE7YGJF6lDVgStBiR7hzFaMIuU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDIL7Y009387; Tue, 28 May 2024 00:36:04 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DxHZ/le4D50uzqj/o/QG1JATYD1j1rn+0MhLkCMycTHQ=3D;_b?= =?UTF-8?Q?=3DPb8sEEsd2hcRo5tlodMLmr0P1PidiYL9GvCQRoqPtFxwi/O3td/roo/jhgu7?= =?UTF-8?Q?5bXL7sZi_fTfK/Rm2Yw1efxgW1UwFz8NMLK7VjQamul5UPhJGGbICx7u8tLtoiu?= =?UTF-8?Q?I/ekHFgzNh0wvZ_S5aUdqc6+w7BGnUJRFTRQ8+yAIiogWxUugbXSq4acx9i/bpk?= =?UTF-8?Q?xTVX/Xe4EwrBwyPV+og0_D6bHf4a9qRMohljvzSRFihqx8kjMPjSdOQ5pckcTSK?= =?UTF-8?Q?P8RM0hnC3UKAtkGWYH1JygJcqg_w9QPk03HWWE2D8mH1IXSGbK7KPzwtQyHu+/R?= =?UTF-8?Q?m0XXjdvY4T8NFYcOj4qK0/+j7BOjL6HN_Sg=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g439jd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:04 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLZ3SN025791; Tue, 28 May 2024 00:36:03 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2040.outbound.protection.outlook.com [104.47.51.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7xdf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:03 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GKJwBf6eWIc5V8OVO5dWFA9YmwCl9brgB/ooSrN0ZRbaFU69kpIpq8lPR97nok30SHidf8a91gybTf7wjTHHWmJZRWnYkzmTwo802Ks+2jAy4GGBEmnEW4u9EXMZCBqCR3ATjrk7ZAWDrG13QaO8zTTywHvdH88N1xiwZHhgJu6nSRzvJqHwJZFsQAJ0bU/kEM4G0hpSopcx1j5LrW+DXe8DLhyOJMMJlcrLOc76bYW6Gjpa2rE6HRKtoDDMSjl7U+VBFI+RfycRrX2Oswbr356YqQ51DrtxMKGNJfeUBfUisOAvj85kj/gjKxDKneY8Tv/YmH/acDC72cjVlRlVSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=xHZ/le4D50uzqj/o/QG1JATYD1j1rn+0MhLkCMycTHQ=; b=bcF4cFODAqly5Qu8vWC/7PV4EFGU+1Hx+tfiElonsdbJxXsp6Jj+MDHI387P4SYjqzVqReXU+MUXraA/e2Yf/v8hmH2ofUm96UyHEaTH2Yj/dJngmAR7WDhCSfvcMdPqRSl+zQyNsQrURgRUSSMHSfI+bMkKWaPIDi4RcTpU0zZAGFZYHqm81t5LzFJYjNTAVNkgcdAwYdbObBui2E2aZFVRHk47VT613dKUvSA8/e+wohpuNI35AVwAzkBJ8p20A3JwL5aTQapBjMHAEYVMoeQAM0Id8fUPosGxZ4tLFlmqOABjJjxVFpwg2PfWO5rwwv32Wbct+goTA74iwHhUrQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xHZ/le4D50uzqj/o/QG1JATYD1j1rn+0MhLkCMycTHQ=; b=ETo/iqF/TDLASX74Ch85wepHyIKEzfYE/uyCoXzaytvh0huQUna9D9yE/A0yD+4GEVmIK47rx8itw4PSaeQYbSfedreF92/vD/5185MelnrAfJ5S+XgHxex7v7eIZc9suD4xkCxatWfeIplo30CdZnN7mrbVrufLHqixZvwdRsQ= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:01 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:01 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 11/35] sched: __schedule_loop() doesn't need to check for need_resched_lazy() Date: Mon, 27 May 2024 17:34:57 -0700 Message-Id: <20240528003521.979836-12-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0208.namprd03.prod.outlook.com (2603:10b6:303:b8::33) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: 67e8db62-4a52-43de-699a-08dc7eae2625 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?UFJlEGWDqK5Fy1Htzu/Q1Tvya5G2Cq/rkFVKsHl3/wBe2x6NHydoz01CdAAc?= =?us-ascii?Q?xd7a3X0WxJqRwwlgY491LMiQkdTGiQpAzXDScxUJTlfBc1R34rUc/gVYqVXL?= =?us-ascii?Q?LwnGj+aNExec0kYnExpJEcdTofSyNqjEysMwNlQqPnejQvIvV4ZhWkWL0JOa?= =?us-ascii?Q?cNCEQGq4S7l59zuzs92gemVaXKmP49VYVgV15WkJV5+VReEJZq6tin+QcE05?= =?us-ascii?Q?nmg2nYdVi0BKIU4h16i7EQ5NEwdj0U/lOvqLxvXbEQx35IWG0hci3Nb18G47?= =?us-ascii?Q?6Cd7ZILDmdRs21g+Cl3rFNs6qAGm6eqxPvIzobd+orzNxDeoKdM8D3OL7J4G?= =?us-ascii?Q?668zrfl6OVkwkt13xT/84g6p0T/2ST/B2NmWJkQbzrLIXBtz+eXNh0/gN2E+?= =?us-ascii?Q?xB+h2S2+gkoe6JIXUs4tGHyPLLWF3Dx/5sEyirh3i8p8DUiIQ2aELfLqLCLO?= =?us-ascii?Q?kIHYg5Hodpvql9YKtDsA++vwEgku5qnTHbIUBedkuUDmGFO8f/vFt/kLmiZt?= =?us-ascii?Q?YK9+o1dNM8Pijus0xGEjOeZWMIWsMg3lPUvRN9Efy3NZSm7aNSWRTZ7SYx0T?= =?us-ascii?Q?Rm9Pxct1KQ+flr48EdZ5RY2jZn7XzAQC4gogdxeTywbsd6+iPYw5pslAH+Z4?= =?us-ascii?Q?QWkfiu84r4d56F9kqm4hQToEQMA+zzxX8uxV5IYcQ1P5/8OspPbZZE3iBpQK?= =?us-ascii?Q?tGa2wHmCEmzBt7iv2/Wzwbz/s1zsfIPTF6d9zvIBgbnO7CKT1sasbJeTYiHe?= =?us-ascii?Q?DSgeW2hgiesAYqSJgfleODxSnhVTbyoJt04efcty9WHHb0HjnfjYR7B0M5Ju?= =?us-ascii?Q?w5ZQ4Hw3CZ3sMYsPShTYp6fVZbZTw/rDJtaoIKKehdMb5/RhNivh7zi40W80?= =?us-ascii?Q?REfUh8UApNaPAg7bkiaFsJophnndQvo1XGZiLAznWAiDyMroW4B8T3bMUsqt?= =?us-ascii?Q?V1mRTpoZno/V1InYQqPcrD+6oMakvDCPTT7wIm8Cq2o6qfNKYatk9OS+vG9Y?= =?us-ascii?Q?/ei9QOW5fSliXRxKvhw2b19WPrHORZBcnusErR62mDKKWkTSwyaYlzolvYeN?= =?us-ascii?Q?0JabZue2UY/Ls/+qfkHTQt52Ne8ET4UE0I1+7Sy6VWeUWTEY1C12aVyHSmZJ?= =?us-ascii?Q?UtZdst81P2c8HLKTajzV4PHOslHJ6+CI56XnEfOA3XnQvZU6C5pP0wXO1PBa?= =?us-ascii?Q?s5Q0nQ/weSoOkCyPpjANQwvVpRQk2+896IjZRg=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?sZ7fQCiXxofVeHOfvWqrD1f5eRcFXDTULkJ3iU3kICISD6RcuZtxDp3wk4st?= =?us-ascii?Q?mB5t8cbKT2YjR8owhS4Dts66qWKqpSv4oX5W3Op936hkhoZFpbPZObKj/46w?= =?us-ascii?Q?4Buxi6bEMTGl05DvodZGYfM4f4ZzyiDfRJFib4TUnfCHVAaHomH/llk6Jv2q?= =?us-ascii?Q?YNtg/nTOjMjiXr7fIe/Visr7mRyLplCXfadEmOkEzeCMeP3/LgWMcjjcNSDP?= =?us-ascii?Q?03cftltud920Cv1JwtOBGcfiWLTKQ4Ho4GKGOEvu1bemdzmInLgOw4bU6Wp8?= =?us-ascii?Q?gdLpFHxPUaMCZBTvp1/oh2WKnN6T88e3dr0uhnTrfjFzWu6pm2mTP7sgjtPN?= =?us-ascii?Q?pJB2kKYFTA6B72TUiiPg3tBCGwRIprS/oECu8Gf69XeQhMTxbluKr8nso6EB?= =?us-ascii?Q?IMf0guJFxME3CN9g3reovIIrS8/8So/NyysdhEq/hhK6vcekqdF3KRF/fYO0?= =?us-ascii?Q?VWQBfQS5RcHD/9ByzoC+snhUK0AaoWhhUw2uN0v5M36vkE7HZ7qiUWPrlc8Y?= =?us-ascii?Q?Ks51lyV40j6H4z8IjIv0QVUS3OQi/E2lNcnGnwquzAcIZPzIf9msZoNpFYeq?= =?us-ascii?Q?ENWUaGjxN4g6152uVCuw048MeWoWqKgu2oYAoJC8gVGJ0oQqDrqWW7GKCvGx?= =?us-ascii?Q?uP9GjklSbbGdnQAu80jTk0VbfaOMV0CuQa6W0c2Kz8rcNT8K5Z1hNyl9gd2u?= =?us-ascii?Q?+RxErZh5rkw983jLA+DUfMue/Y9ew+aU+S8E8EuoPoxdyMAyGxtfjZIIUfZi?= =?us-ascii?Q?sBIn1wCdXfHesO9ZT9b2vPJCnybU23ED5xMJOkiz2ikwtUca3NEBaA7akUos?= =?us-ascii?Q?xjTnrg+dr8eEIJ/SRrxIn2GwqzOvwE7ahqmbSEbHNTAAGbZDD0SOBJFsHTX6?= =?us-ascii?Q?qt9CSYRxJtuYcHlVx57n9MWsfcRX1Cv8g3AmaS4SrkcX3Rmj2gQyXWxGF3XS?= =?us-ascii?Q?obMYLVBwIolRl65V3lfbgAogPpqCbNK+GKH0vkgvMTHosDP9pb0D60HEqptf?= =?us-ascii?Q?9zGvktUF3p/8qKn6tpUJh6CtNZtkriBSLNEX9R+Nb0kIV897RJSwfHEYZS7T?= =?us-ascii?Q?KYTK1aT5Tc1hhJPNCSrCdJzXA/swI1ntg6W4FweR5dGpHceMmDHhXq4oSogy?= =?us-ascii?Q?g05I2JHcUidVHM4zYvF+PHpX8d55Nen+HfYmgcEuj+bxMqGYwJO8b3gP5bga?= =?us-ascii?Q?JQE7RkG8kOsfDWyw0b5/Kd666yMp3Z0zwUWtofxDY1E3Yyiy8hKVIorxJH9a?= =?us-ascii?Q?ul7B3zefoDBmYYXgBjRhhQbkR3O0WpzzsSFwQQTJaXBdqJ7vDLbkcnyhVMUs?= =?us-ascii?Q?FMJ0dvZmPERcdavZGe3Ha4WWJHLAGTICMTEOmWdyBjET/YkkoCuVd8ABdIVk?= =?us-ascii?Q?jWgxVPf31ut8W9qAFxNmKuzJepiGMQ6zkttfpyqjUm8xYyBQ6WONIvWiqIdL?= =?us-ascii?Q?zxiMxTn7TSO2B9rYYQ05Ib94cA4zzIVSTtKgKBSxpCJs5++giErzWdc3ujj5?= =?us-ascii?Q?Rh+MNTLVL1WyEztKBCqqSBTraz2Is8Jn4GFh7eaowpUm2CXtL8gkj5QIeLBu?= =?us-ascii?Q?peqesSdh7S+IGJoIr3j1M9v63R7siGyKhNNMhzvsj8tus0lUGkhr6qsGNBrH?= =?us-ascii?Q?3w=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: uK7c5mXdgnHx29WeblvBArUVjU+ZYGNelTnvz+Lu2/bTJOn1Cw5GAeKE+JYFLw/RcsQiW5F+oXrIggQoGz8B0KkZxNkPHuXjt7ngzmj27xHe3nVQRB+p3eq/niB2RtrjbgIGgESNUtkRLnzNICGlFaZUHwYGl+4vVyfuDP0gX6efVu9BfGcfneqeac662SOZ2DLXGE0hDJOEgke7Y+nBpLpB0y0EVWFt16w2SGn94bgkl2m9N4VNmkiEVT7uFUivVbaK4qAUwyLcp2xDmfakNreR/Sf1CvXaQop6CUF55kYKRYSPQ/KQtWLJxuiLYIUYXK5wQgIJaKqgCTpllouzvuR4KdqOo7C/w3FLjn03nyFp8/UMGSYs0MtKNu9s19q50nbCKi9ouZ55MzKdg7ZSBiT7rjZAMGmk9hNAoVObBNMRaKbzGUyenDWOpJSkSuLksJhPqO3mBU+348M11FSPhHwbVEZcn52hdJ0AW3Oje24h2Lm2a+DMmwk0mBPU4Cdy+jWW5rDDtpjWLN6kUkCw05riWSBUfnYuu0VjOw356dNlPE2gWBNOdrtHrflshM+xDpGqLq3omKS+gX09A4OcquAvW9dl9rEsJ40XDZ2Lme8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 67e8db62-4a52-43de-699a-08dc7eae2625 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:01.0456 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FWhMFlOQTmWSdg1YrOO9NQtRUlH/ekPhaTutWho1oAnkqcGDjldbbhY3vXqc2XNJliJSYBAmCRIRJSaJgnjDy9Hk4VQaWW5cqilB8wduVwE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=690 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: x4FTu6GFzsKXML3cIjG-gtRpTD9OXSQG X-Proofpoint-ORIG-GUID: x4FTu6GFzsKXML3cIjG-gtRpTD9OXSQG Content-Type: text/plain; charset="utf-8" Various scheduling loops recheck need_resched() to avoid a missed scheduling opportunity. Explicitly note that we don't need to check for need_resched_lazy() since that only needs to be handled at exit-to-user. Also update the comment above __schedule() to describe TIF_NEED_RESCHED_LAZY semantics. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index d00d7b45303e..0c26b60c1101 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -6582,20 +6582,23 @@ pick_next_task(struct rq *rq, struct task_struct *p= rev, struct rq_flags *rf) * * 1. Explicit blocking: mutex, semaphore, waitqueue, etc. * - * 2. TIF_NEED_RESCHED flag is checked on interrupt and userspace return - * paths. For example, see arch/x86/entry_64.S. + * 2. TIF_NEED_RESCHED flag is checked on interrupt and TIF_NEED_RESCHED= [_LAZY] + * flags on userspace return paths. For example, see kernel/entry/com= mon.c * - * To drive preemption between tasks, the scheduler sets the flag in = timer - * interrupt handler scheduler_tick(). + * To drive preemption between tasks, the scheduler sets one of the n= eed- + * resched flags in the timer interrupt handler scheduler_tick(): + * - !CONFIG_PREEMPT_AUTO: TIF_NEED_RESCHED. + * - CONFIG_PREEMPT_AUTO: TIF_NEED_RESCHED or TIF_NEED_RESCHED_LAZY + * depending on the preemption model. * * 3. Wakeups don't really cause entry into schedule(). They add a * task to the run-queue and that's it. * * Now, if the new task added to the run-queue preempts the current - * task, then the wakeup sets TIF_NEED_RESCHED and schedule() gets - * called on the nearest possible occasion: + * task, then the wakeup sets TIF_NEED_RESCHED[_LAZY] and schedule() + * gets called on the nearest possible occasion: * - * - If the kernel is preemptible (CONFIG_PREEMPTION=3Dy): + * - If the kernel is running under preempt_model_preemptible(): * * - in syscall or exception context, at the next outmost * preempt_enable(). (this might be as soon as the wake_up()'s @@ -6604,8 +6607,8 @@ pick_next_task(struct rq *rq, struct task_struct *pre= v, struct rq_flags *rf) * - in IRQ context, return from interrupt-handler to * preemptible context * - * - If the kernel is not preemptible (CONFIG_PREEMPTION is not set) - * then at the next: + * - If the kernel is running under preempt_model_none(), or + * preempt_model_voluntary(), then at the next: * * - cond_resched() call * - explicit schedule() call @@ -6823,6 +6826,11 @@ static __always_inline void __schedule_loop(unsigned= int sched_mode) preempt_disable(); __schedule(sched_mode); sched_preempt_enable_no_resched(); + + /* + * We don't check for need_resched_lazy() here, since it is + * always handled at exit-to-user. + */ } while (need_resched()); } =20 @@ -6928,7 +6936,7 @@ static void __sched notrace preempt_schedule_common(v= oid) preempt_enable_no_resched_notrace(); =20 /* - * Check again in case we missed a preemption opportunity + * Check again in case we missed an eager preemption opportunity * between schedule and now. */ } while (need_resched()); --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 62684DDC3 for ; Tue, 28 May 2024 00:36:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856585; cv=fail; b=t+0rzRG4ggQBrHXRmEpGa1WIGTOi4GzlJ4I/YyKpghzVOSZ9BbS0H8tScdhneCm/aVoar7WgvcW5A9gsVZzJrpNIqtKeEwXSSoOYAlu5HYa6GkUfKCAVeyprw680ieHGjbikfpqmfi86nOJJ94blWD+il2rDsDRNpPxhAt/bwUY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856585; c=relaxed/simple; bh=CGGqpTc4XjWy8ugmVZnmmyrSzYDMv9RuWhE8WpPwdn4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=ngtUCIpRWGujSTOSflwPYJF8ZK7WCS1SgVLZ1MH0KHL7ZVj/VuEEOpFgl/CXks3ZMXhR7yHbic5XxeZxO6Ko5B4w4BZYRvXte1JEcFmK0+NC+ZYhy1XO/+RPwB9QoL0MLTuXcnSnKi/wFxRYwkfcDKEVQDCLxxaBUc39JDmq+FQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RH4gxs001280; Tue, 28 May 2024 00:36:08 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D0iFcjpALK5ExneZIccLZ3bDCRkqSscI3NMVdDFB/72w=3D;_b?= =?UTF-8?Q?=3DDyHHE1P3tQYGkVWnnwxYfV6AUfefrALEzRu5VTFop1iAhJFCTf8EbMGszLGK?= =?UTF-8?Q?MqsOd6Q2_UGpi2hWmZcK32i+7zXjvJmnUCmCHDY7u6w6tPDnDx7c5leAVkoiuqI?= =?UTF-8?Q?zdA9TLDpW0ccc/_tee6mv5JTgoWNLEa9bYYcLaAKUuwlyjSo4Ok/fQ6kMD8E5mV?= =?UTF-8?Q?0YMMaDjVNfHVuXmPem42_f705Yy+fA3AB/nwnUhW2NC0JCNo/JhJzha4Y9u0Egx?= =?UTF-8?Q?OdBpHrLB8KsY3f9uduZJz9oqgA_CspOkxq+5IdItDetKVUUh1vXRi+8rSp1zfUA?= =?UTF-8?Q?HGuC6Dyoaj4YXoI75kTOYKAGIcshECOw_JQ=3D=3D_?= Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g9k8w8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:08 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RL6qBw036572; Tue, 28 May 2024 00:36:07 GMT Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2041.outbound.protection.outlook.com [104.47.51.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc534rdfk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fTz/WkIqhKGXLDftzQP42SzPZHw1MH1zcx+b1//HWcCeD2ABTftDVEd2nYM5Sn3zCl638lgwNzk35mU6l98SvgiKwuMhvkDrHTXJ3vCtrpKkiv4BQuTZLNGLl1+FsI1ZYlE0XqjpFK3+GLeIJwmROB+wMn9X4uQ3nk16i2hqwlmoRLvqay4PlddYtqItPG1cJUXAQfbewqvhDrbrBvziR/T06/AocJLQFOAMfDBRorQd6DQeq/aCnXG2ZWcM0qVya7KS+OxtbXQuYiaOCpFTsWeVQM+EBbz69p+/x/Z3iT6AhEvN5T8uKmLFYmXdeYRxp/4P6ilfZEA5FW8qXgfBcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0iFcjpALK5ExneZIccLZ3bDCRkqSscI3NMVdDFB/72w=; b=XLxkJ7IZ9sHDvsCXEX5Ad/ehQ2hA7ALhG1QvDbzIfkMEXUGZbD7kjRd9hmhwUnQR02B2Hfq1iE69tFTfhE2/0rU8dIwLxc19RG8pjniVvGgRxZ4F6ofiJWgz6FAfRtt64UHofL7ZiBg3UVvZTIPHBEVG0K2c4eEzrZGoVvMFxWvt3EBzeXIDyX6h+u65B/HUMmBUGBmJ36s/sbeNcL8JHMnoxjGHxaY8PPDxHxsMHul8lrNWhGtxuqe7MIaNR0nJKyX12gKPX2xtO3vKK608h/NDexLOgpLYQQzwTRm7DFTCM5JDpD0C7rgFg3XO97aU/D/ddvJpNTwIbD701Hldaw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0iFcjpALK5ExneZIccLZ3bDCRkqSscI3NMVdDFB/72w=; b=GT/iogFj752CWz4Nw6cPSBFgj6KH6+9A5bqFjoxVift3295D8eq+UrfdxLHb9RqhFALtmDyTVh5+vPSWKZXWnaRq7KGfb96scJm/h4hD8P1u11PMqZNetRxbeRDdqatO/InkmB6BOZpzqxcspJKlPN+0HXnNE0pqM4VyDNfde00= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by MW4PR10MB6510.namprd10.prod.outlook.com (2603:10b6:303:224::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:05 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:05 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 12/35] sched: separate PREEMPT_DYNAMIC config logic Date: Mon, 27 May 2024 17:34:58 -0700 Message-Id: <20240528003521.979836-13-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW3PR06CA0027.namprd06.prod.outlook.com (2603:10b6:303:2a::32) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|MW4PR10MB6510:EE_ X-MS-Office365-Filtering-Correlation-Id: c9fa83bb-1c78-499f-9955-08dc7eae28c8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|376005|1800799015|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?D1tJ/1OGOy4d3BMhJQ7x3Y4kE+LbAaXCDG2+ilUWQZ7Za44bhh1PQc8EOFtZ?= =?us-ascii?Q?NCjYi23oDvrdqFAE0HhEle4Qmgh/Ut/8ZDybj8oHM91WDMyDxITtttJTyLR3?= =?us-ascii?Q?cBL2cgyqt20z+dZuh7Gqtr4+5BeJjiczbnH9hKGMQ/P9T3RhlwJcF/W814XP?= =?us-ascii?Q?14RxYXc5KA3sl6TBUvRvJGzGHrhM3OI9Ib+Gsc0MzCZ8RxVvBbsZNj5p1fde?= =?us-ascii?Q?QXDGrf05anEEjD+eiCqMY5E8D8s3zVMukG/DpOb1oNw66EBbeuI2Z0A+sQcD?= =?us-ascii?Q?jj3AYTHE+hU+u491fwoJ1//DNtPv3/ZCwaMcPCD+k1NxqOn2NANob+UiOOcm?= =?us-ascii?Q?JYABEdxalO40LVPJOsyp4LS4S+ttKY4lvJnPVqWpqhm/SL0G3xbCRoPkIcta?= =?us-ascii?Q?vGy3MxtNB1KukG6U63unzLkoS0H446dMzjwlwoTDxsx715qWo7dFMCHeFEvo?= =?us-ascii?Q?Z29Muon3+GQZCQKxxqM2r/We8/QPNusYH9ZTL5Bgszx73+d+Xs2vo9k+Uycb?= =?us-ascii?Q?DeQNihghD4g/HdPz4Ji9cYGs8b13T87c9ZVtfrHm52tmG6EwuweIfQBzbKpA?= =?us-ascii?Q?I9j1Lrxmnm258AP2msLPMlWbVdgIo6D5nW5aJH7wtCe8IXbodarly19A1iwF?= =?us-ascii?Q?Bg4RgJUMxIaBDst55lzprsl7gXvbPzAKIa5Etp/pfIWhpgCkBTlemubmsHid?= =?us-ascii?Q?ux90OOi2eliI+xcpkeDXOyTnBptjirb1kIWzCSX+HlSXUzX8b7+98y4qIS3l?= =?us-ascii?Q?8EI6s0o2monkq/hh5XFEqvBKRuJv99egvVe7+CCDb4rIPtUOFezcut6C451e?= =?us-ascii?Q?CjqtxNikvdiaJM8bQ9lFkEVOkWGNOYtomw4KVrvLnPjtGr6YuBhIzu9JZn9O?= =?us-ascii?Q?JWtrYgq6JMQ5FMdhWd5FKP01tmD0ggUSUQoDcdobEYJJWKE6Afwm2MNeJIlB?= =?us-ascii?Q?uTtW0DaLrxW6m3OuMt6S3rFmduDyjDeHiUJIHWLU+Gck748mptIfo4XidEnd?= =?us-ascii?Q?3DbyBpQD3HiZCBsZwr1uSWtmJagnddQpFwuvzXBFNs9vfklRk8sUImTjZ/0o?= =?us-ascii?Q?LyLDMvFv0PKOoNuk7TpZ9RGN4hJDvO+7nSmIOCGErl4/BNXmCpplIQdsEM3L?= =?us-ascii?Q?02tx1rQAO7G3xVPSWMBhQ9A1suGhM0jJeyqEMoH7Zf2VvKxQGt4Yz+6PN8fi?= =?us-ascii?Q?Fnhz9iC98Th6Gf3RW861k0WD/8emOJ2UvW0EIDFwfcAws/PCn6zwwFsCdypD?= =?us-ascii?Q?oXtQkfduhk6EpsnOAE1S6947V3J2oYj4p37EryIgxw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(376005)(1800799015)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?rU8UNe5NDOCawAUe2UiBxRyJCCEq75NoJg7HTeLloT4kS4YOUfuMolKZe2QT?= =?us-ascii?Q?vHNFgL4kgDjZJEbwrqrUtJsYSMoOMTCgpIvA6ClBAXlgVsGiau3MUEL8iuJP?= =?us-ascii?Q?7vfio2tz1zREpIaL2sKLm4sg/O6TiIWqjZ7c6yNtBnCVbMBOuWcoq740EDJg?= =?us-ascii?Q?WxkqP5askRdV+64mxUqGvuVtGV7IXwDT4rYAeLqSsnXoh39SJXsUwdDAyBYB?= =?us-ascii?Q?UxYgUQbIQiHXBYrG9st0GAJZJo6gQMuPsReSw5BxxABFqtL1MPQltKYQ+AC5?= =?us-ascii?Q?fqbl1HVjJ03z7DYXhWkS2BZzDJaHE5ZfxMP0LuEsxySP7B9VQduWgC5wN6kb?= =?us-ascii?Q?7F6bEi0Eh4DvCZ4xD4CZUJnOnj3dIoaB5uorA/ECLa93yWfBDI3GGi1O/dls?= =?us-ascii?Q?0jxW3ZHsUiRH5NgctCPsm8N7l56XxvUTvIbxgfAd7kzHnoVK6fuubye4VqGy?= =?us-ascii?Q?zOBXYLsZ0ILHWJwotI7TqgWpPFPN4jSAmjPCb99ZXhwGwVmJzSMv1K8B820E?= =?us-ascii?Q?wYg1aHuPyIkhzaRPH9VHsWsUNpZGUNQx7HD0nOp+tOSi/dmOinl5DPh3XJJx?= =?us-ascii?Q?ym9lBFN4zdr6aELygBfJ6Q3w2bqi+Xp/yEUn+ObNBhAY7GPNV/lis/ieZA0M?= =?us-ascii?Q?m+B9cnstXExVM3v9EcAd5pLuKvEM45JF5EaJwsYbwjLiA1HE2VOZHjfgj2m+?= =?us-ascii?Q?lWI7Q9f3JDVTIzYI5dtY80EW33ZD23tFjB/lc/8K9lcJy3hYJ9MqlUEnKCsh?= =?us-ascii?Q?ZaR8Ag1K6OJQliD6VWl0Bq6V8PikvSbbEXGcj76+MIpJvQ+A8hYk23roGMGb?= =?us-ascii?Q?X1yYBd9GuFORDhSptqVntxApi0lONBHZBlBH0XVW5hfcj2eC8S0g4yzW5GNn?= =?us-ascii?Q?JDZs90q1zID5rFtoUcCHrG1X+N0lIVUBTEE+1PAWJU65ftjVwUdl9u3qw7iR?= =?us-ascii?Q?wZM6lpDxn8VJ62jCH7ZqROxGFpEU95hgLql+YrJJiRglNVs4YSUyouKV1D5X?= =?us-ascii?Q?IUEuOae4fxE7sm4JlOyk2F3qaHG649rrh1/CUeiKmf6tzQ3TbM+Ov5yqOX5J?= =?us-ascii?Q?9mETQr29KCXstP2B4E8M3cY+/jR36cJtaRPJk9bWU893YD9Rsta5MZ8mpolL?= =?us-ascii?Q?igFNkV7N9tlrTjacJTT1Mu4I2WBxdjUYVozYfKRbv0tml/vP0H5mWfEEVprD?= =?us-ascii?Q?JpgOTSCve+qYvw+kT8T8fQgdhsgAhH2QOdJJHZNKLd2TeWrkK4DaI9G8rNuh?= =?us-ascii?Q?6WLSBkA6MTwcrK6/cTSTQJ11j/SR43A6MA95Fl7yh1xzo/xVgEXrR2sShCpS?= =?us-ascii?Q?3BrozNtOml77KT1uPJM7ZFR7CQPwdEkznxmOZoq/+PXJyHs7TDSJvGhGbJkW?= =?us-ascii?Q?w0zp5biSKPG1AvPDDeh08UiPcTGTcxV37KAWXBgZQyJo8iwQBoLMpNs4siam?= =?us-ascii?Q?qzsRmFRQYcHjhKUZOtfRLpv5ie97MVmMq6hlTLMV9MmA0wpxBcIuxk0z4L7Z?= =?us-ascii?Q?MbHgW0d8WtOu8oEpKuwcgQnb1y4kRB8ARPjx9sJWc4d3E79Ua/WNu6VnA38G?= =?us-ascii?Q?VOjMxinisvmrmf5qAARg3nlcCH+OUa4zCKEg27q6dVh+LrzFKjGmT8fcm0JO?= =?us-ascii?Q?yw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: +Gk1BdfsQaSqaZi/Bb5bD+oF0JyCTiUlcMJxudXPMAfRbSvEtBsScMshZIUQDu7RB+8n50KOHCLuISG4bZOsVKCHwf2YAHq7yQkOgtyTmLXMVNPTupOcCvBKcnrzRNNNj6UB8DOxdtfF775VJVDmQFN4sFCC37PlCvgexRhwP+y39LwI/j2rXGPhsvZrEp8SCXdRr2jQpFiYtl+oXC2yEt9RwR0XFF7f5qHZEXUr3XyQrdeuf9+HXn6WQdgNfwVNFM9vmJj0JqQoY+9lR6krn2+KerYg3lzQUrXl3zIv1MEcLmWmO95zHoFN7JB7tBWmvUhDtbWYGHwluRONq7HvwdVuRgqckJHrPRS4oBNjAIDrM4hTepWktkBkxvn5lEMBYDwUoH62lJLAr/l+ztoY2WssO58Kl4RM5tGm2/rGcjsUaFVd7iJeJ5jMY2FZu1JRj6OqnhdEvMd1KGK9YtTgxJZhfeY3aWGtIktkN8gAnDJ/IjP6LFxkP6kWg2nuh7Le6k11A2nyBqvkC+nd4JOxsLu03KofEIXGhIjbj3hdl8pB2zRL2BjH9OZ0TafF7KShCwsrEsMzza5gJ307hSw0ixJAVr8CSlv1XUPrleAawqM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c9fa83bb-1c78-499f-9955-08dc7eae28c8 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:05.4477 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ck3YrSaZD65n9QjOZdl8tsNaOGyFXxPV0djAAOCfhK+9szEXHYrirhTwz4BqIAHKW7KdTt8eJ+oiEJTYS9BRmso/6q0g3nCgc7DG/cJTAfQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6510 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: uOP2J1tWwx4LLgccY5Bo5yYUseXCkem_ X-Proofpoint-ORIG-GUID: uOP2J1tWwx4LLgccY5Bo5yYUseXCkem_ Content-Type: text/plain; charset="utf-8" Pull out the PREEMPT_DYNAMIC setup logic to allow other preemption models to dynamically configure preemption. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Signed-off-by: Ankur Arora --- kernel/sched/core.c | 165 +++++++++++++++++++++++--------------------- 1 file changed, 86 insertions(+), 79 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 0c26b60c1101..349f6257fdcd 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8713,6 +8713,89 @@ int __cond_resched_rwlock_write(rwlock_t *lock) } EXPORT_SYMBOL(__cond_resched_rwlock_write); =20 +#if defined(CONFIG_PREEMPT_DYNAMIC) + +#define PREEMPT_MODE "Dynamic Preempt" + +enum { + preempt_dynamic_undefined =3D -1, + preempt_dynamic_none, + preempt_dynamic_voluntary, + preempt_dynamic_full, +}; + +int preempt_dynamic_mode =3D preempt_dynamic_undefined; +static DEFINE_MUTEX(sched_dynamic_mutex); + +int sched_dynamic_mode(const char *str) +{ + if (!strcmp(str, "none")) + return preempt_dynamic_none; + + if (!strcmp(str, "voluntary")) + return preempt_dynamic_voluntary; + + if (!strcmp(str, "full")) + return preempt_dynamic_full; + + return -EINVAL; +} + +static void __sched_dynamic_update(int mode); +void sched_dynamic_update(int mode) +{ + mutex_lock(&sched_dynamic_mutex); + __sched_dynamic_update(mode); + mutex_unlock(&sched_dynamic_mutex); +} + +static void __init preempt_dynamic_init(void) +{ + if (preempt_dynamic_mode =3D=3D preempt_dynamic_undefined) { + if (IS_ENABLED(CONFIG_PREEMPT_NONE)) { + sched_dynamic_update(preempt_dynamic_none); + } else if (IS_ENABLED(CONFIG_PREEMPT_VOLUNTARY)) { + sched_dynamic_update(preempt_dynamic_voluntary); + } else { + /* Default static call setting, nothing to do */ + WARN_ON_ONCE(!IS_ENABLED(CONFIG_PREEMPT)); + preempt_dynamic_mode =3D preempt_dynamic_full; + pr_info("%s: full\n", PREEMPT_MODE); + } + } +} + +static int __init setup_preempt_mode(char *str) +{ + int mode =3D sched_dynamic_mode(str); + if (mode < 0) { + pr_warn("%s: unsupported mode: %s\n", PREEMPT_MODE, str); + return 0; + } + + sched_dynamic_update(mode); + return 1; +} +__setup("preempt=3D", setup_preempt_mode); + +#define PREEMPT_MODEL_ACCESSOR(mode) \ + bool preempt_model_##mode(void) \ + { \ + WARN_ON_ONCE(preempt_dynamic_mode =3D=3D preempt_dynamic_undefined); \ + return preempt_dynamic_mode =3D=3D preempt_dynamic_##mode; \ + } \ + EXPORT_SYMBOL_GPL(preempt_model_##mode) + +PREEMPT_MODEL_ACCESSOR(none); +PREEMPT_MODEL_ACCESSOR(voluntary); +PREEMPT_MODEL_ACCESSOR(full); + +#else /* !CONFIG_PREEMPT_DYNAMIC */ + +static inline void preempt_dynamic_init(void) { } + +#endif /* !CONFIG_PREEMPT_DYNAMIC */ + #ifdef CONFIG_PREEMPT_DYNAMIC =20 #ifdef CONFIG_GENERIC_ENTRY @@ -8749,29 +8832,6 @@ EXPORT_SYMBOL(__cond_resched_rwlock_write); * irqentry_exit_cond_resched <- irqentry_exit_cond_resched */ =20 -enum { - preempt_dynamic_undefined =3D -1, - preempt_dynamic_none, - preempt_dynamic_voluntary, - preempt_dynamic_full, -}; - -int preempt_dynamic_mode =3D preempt_dynamic_undefined; - -int sched_dynamic_mode(const char *str) -{ - if (!strcmp(str, "none")) - return preempt_dynamic_none; - - if (!strcmp(str, "voluntary")) - return preempt_dynamic_voluntary; - - if (!strcmp(str, "full")) - return preempt_dynamic_full; - - return -EINVAL; -} - #if defined(CONFIG_HAVE_PREEMPT_DYNAMIC_CALL) #define preempt_dynamic_enable(f) static_call_update(f, f##_dynamic_enable= d) #define preempt_dynamic_disable(f) static_call_update(f, f##_dynamic_disab= led) @@ -8782,7 +8842,6 @@ int sched_dynamic_mode(const char *str) #error "Unsupported PREEMPT_DYNAMIC mechanism" #endif =20 -static DEFINE_MUTEX(sched_dynamic_mutex); static bool klp_override; =20 static void __sched_dynamic_update(int mode) @@ -8807,7 +8866,7 @@ static void __sched_dynamic_update(int mode) preempt_dynamic_disable(preempt_schedule_notrace); preempt_dynamic_disable(irqentry_exit_cond_resched); if (mode !=3D preempt_dynamic_mode) - pr_info("Dynamic Preempt: none\n"); + pr_info("%s: none\n", PREEMPT_MODE); break; =20 case preempt_dynamic_voluntary: @@ -8818,7 +8877,7 @@ static void __sched_dynamic_update(int mode) preempt_dynamic_disable(preempt_schedule_notrace); preempt_dynamic_disable(irqentry_exit_cond_resched); if (mode !=3D preempt_dynamic_mode) - pr_info("Dynamic Preempt: voluntary\n"); + pr_info("%s: voluntary\n", PREEMPT_MODE); break; =20 case preempt_dynamic_full: @@ -8829,20 +8888,13 @@ static void __sched_dynamic_update(int mode) preempt_dynamic_enable(preempt_schedule_notrace); preempt_dynamic_enable(irqentry_exit_cond_resched); if (mode !=3D preempt_dynamic_mode) - pr_info("Dynamic Preempt: full\n"); + pr_info("%s: full\n", PREEMPT_MODE); break; } =20 preempt_dynamic_mode =3D mode; } =20 -void sched_dynamic_update(int mode) -{ - mutex_lock(&sched_dynamic_mutex); - __sched_dynamic_update(mode); - mutex_unlock(&sched_dynamic_mutex); -} - #ifdef CONFIG_HAVE_PREEMPT_DYNAMIC_CALL =20 static int klp_cond_resched(void) @@ -8873,51 +8925,6 @@ void sched_dynamic_klp_disable(void) =20 #endif /* CONFIG_HAVE_PREEMPT_DYNAMIC_CALL */ =20 -static int __init setup_preempt_mode(char *str) -{ - int mode =3D sched_dynamic_mode(str); - if (mode < 0) { - pr_warn("Dynamic Preempt: unsupported mode: %s\n", str); - return 0; - } - - sched_dynamic_update(mode); - return 1; -} -__setup("preempt=3D", setup_preempt_mode); - -static void __init preempt_dynamic_init(void) -{ - if (preempt_dynamic_mode =3D=3D preempt_dynamic_undefined) { - if (IS_ENABLED(CONFIG_PREEMPT_NONE)) { - sched_dynamic_update(preempt_dynamic_none); - } else if (IS_ENABLED(CONFIG_PREEMPT_VOLUNTARY)) { - sched_dynamic_update(preempt_dynamic_voluntary); - } else { - /* Default static call setting, nothing to do */ - WARN_ON_ONCE(!IS_ENABLED(CONFIG_PREEMPT)); - preempt_dynamic_mode =3D preempt_dynamic_full; - pr_info("Dynamic Preempt: full\n"); - } - } -} - -#define PREEMPT_MODEL_ACCESSOR(mode) \ - bool preempt_model_##mode(void) \ - { \ - WARN_ON_ONCE(preempt_dynamic_mode =3D=3D preempt_dynamic_undefined); \ - return preempt_dynamic_mode =3D=3D preempt_dynamic_##mode; \ - } \ - EXPORT_SYMBOL_GPL(preempt_model_##mode) - -PREEMPT_MODEL_ACCESSOR(none); -PREEMPT_MODEL_ACCESSOR(voluntary); -PREEMPT_MODEL_ACCESSOR(full); - -#else /* !CONFIG_PREEMPT_DYNAMIC */ - -static inline void preempt_dynamic_init(void) { } - #endif /* #ifdef CONFIG_PREEMPT_DYNAMIC */ =20 /** --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 0B22EFBEF for ; Tue, 28 May 2024 00:36:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856591; cv=fail; b=OxIGDs5QY/5nUSiEo1rmep5SQmFd0+LTHNv8K0zBJzhDtsWn1Ixm4XDy5g7YmHWDNKd6pz1rLSRjQx6UQOCG2YmgTLufy0+fLB3ESb939jUHYUh9ABCOUlKuY99rizFBzeq8f1T5+F7s5mDNrCeaIU21OrmVuhHSxDNm/g6mNJQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856591; c=relaxed/simple; bh=n5kHsq2LdeTXPidmFPEb0CBJulVBFf/7qrNINHvcFcQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=IdXrpdq13u/a+R/ucL8ImNc8RYwNOTsP36D/OPPLtDwMvEjcAFaXQBFUDhzTNJsrnbEzgcdVr6MC86HzRtC46Md6nAollmWb1KQCXpVTOh6gA/ONKWbedzZj7kMrEJAemZrIgmMOETHn36pmlaPC8LgcqkmAgrPjASh+HJsd5o0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RH4gB5001264; Tue, 28 May 2024 00:36:12 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DGx6lN4oSikeRoIFj6jpi8xRrGdkpmoo8JEO3xwmhxYA=3D;_b?= =?UTF-8?Q?=3DfscyhiWzwpp9JAQNe8gQbaDjVEjxeRI+wQ8fqlcmGNjscxadNNmouvPRVm5j?= =?UTF-8?Q?nutd8kBO_QjJVKru6m96xLwvKGDpq05v7eoTkLGoeHmoBseseytxsTFVCsSMCx7?= =?UTF-8?Q?LnJ4Lub0wPBKhf_n9fSTZV/qvr0iQxnBrTqKymGILu8nHtKSCevo7c4WAGFVhLX?= =?UTF-8?Q?D/DE1Po0FGfpDVnVt1Ct_6xcaOcCnFAVOI/USMpITn+WCROlcGnV6urxn8b/TGO?= =?UTF-8?Q?A03wY83RVgaKXRo3K3wyxm3vzj_p9Su3ZG2Ft8ScAliInegntVginXRPWSfS2lW?= =?UTF-8?Q?pUrxgyD8iNzt1PuODVb9C54NPncVlw5D_gQ=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g9k8wf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:12 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNMbXY016167; Tue, 28 May 2024 00:36:11 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2040.outbound.protection.outlook.com [104.47.56.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtfwk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QTFCcw8YHgG7w/PI6Yl5TWh38GKuCVpZ9XjJY3dhU+M5uKQCu0+pCVaMtf5Opa91pVFVucZ9AddF8doBkPmL8KmjxF/UzgVhQLt4Im82oo2AQPIQOAC7E/pzilBZA8uEOTnpuXP836DPAB5z6Rm0hKeBuO/0U8mWgE7evwk8VA46bBmP7LTMNvFaVJcdKMNdrv8P2LykbIiD6wUJCSqgJPnW0pt8VO4OxBlXRVdhrYc1IbXZ4CCTdC+2KBX/2egXfu0wFmsvdLC11yll8UXiOt14wB13/t4Gy7sEJSeTKmAjspiRR/BmATKUUIPdYeiJ4x5/9JfahYJffLvFwbPJMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Gx6lN4oSikeRoIFj6jpi8xRrGdkpmoo8JEO3xwmhxYA=; b=U8fi9rTTK3EHlpA3LPfhYYNjzx4m8LPMXdo3iTh2/wZiULlpUYmGm92czXJG/h6HYukQg7przQ1CFba2oCZazsIGAoTbUqqQ0DdT99LaTqTMdqaB5Ib/uYlm1JSV3xJPuxEG73V+zdGGp52h4Ma8vrT3vj0BlaZCOy9igkv/nhn1xQaUiyLNER9TOlP7/JWCl/yNbuxHavoZEOhBBVtb/ltBrpo5LM1MXJG8gyWp8sgrkgfPlCZxITHnHXVJ7kAbakH0hhBZGDwfbFekoSVNFKHJpAiF2DMNnmwL7XUOGshsaQdc0PDpNs+zx1jWHqC0RkCQd7CZYEx1mjSN28LuLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Gx6lN4oSikeRoIFj6jpi8xRrGdkpmoo8JEO3xwmhxYA=; b=aWnfpMzvSRF4syGr7cF/botVC1ih/+sIDHoc8XEZNe4SDKtZEHO1Zzp18rq/wn7kH6wiikjN2Tp/pB5i9k0mfKi1IIa/zJJi5AD5qnLiA9XVslnwN7njzqYN59hiADXV+coaSYa1AwDMrTSDUxLz56M7dtb+hC7l5Xx112ZlkbA= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:07 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:07 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 13/35] sched: allow runtime config for PREEMPT_AUTO Date: Mon, 27 May 2024 17:34:59 -0700 Message-Id: <20240528003521.979836-14-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0313.namprd04.prod.outlook.com (2603:10b6:303:82::18) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 7d00aae1-c204-4b6d-65a7-08dc7eae29d6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ukQudOUy7cQZi07XT5miBZ/9zwv+lgtRqWSBYZSeskajZ/NT+rRi3MegPZ1x?= =?us-ascii?Q?yxa37A5ozWAskwIYgts9MrQmUi2gBGx88QW+ASPudKK1pb8/X/dzZcXwwaeT?= =?us-ascii?Q?F0wmV59OQk4gzcY6nnGe2hnMyu3t8O4bbq5s5uK/K0B7g1aPJsbAuCZ1dNoK?= =?us-ascii?Q?sIDVI+rBYS0qvfUzjzNeTsvpRsAXqhRF4Srvp0Ve2omSstvgVASxJOb0MgPk?= =?us-ascii?Q?H/RqwzPdVP7Sp+N6MWGO4wXX+uj7JCE3cnGqUSXLbjs0XQzrtlqUBh4hHyte?= =?us-ascii?Q?GLkhQ91JYjJHPR0L6qzSa1XvZHr1nYTB+d2cQvKXAcuSnKTxgGRbonxDI1CU?= =?us-ascii?Q?sjSu8AGm/OUhdofo6CrNpQfd7skC5+rpuaLIwEyq9mQ2AFFPVn7ljFZsE2Wu?= =?us-ascii?Q?IMOuglOoLzvwljMTj3WInq/SfO7b15VKudLftOghhup5IA4IeM033SB36Zw0?= =?us-ascii?Q?1F4U81aMzvzyBwiyvHm1rNxE0E6hb5784TdVI8FPwoyOwaE2bPTuy8fJnIws?= =?us-ascii?Q?HR+ecK6ybvSRE30qQeg3/IhxEzwNVetVBFb+20/TAm3bvkY7MJ+P5qReQz26?= =?us-ascii?Q?ye15wGh59O2sy6PzWdv1mJ+cjuxjt/RjvkiGoOeXLZFdTOvvEyPxF5HJQtmY?= =?us-ascii?Q?F+z+ome2JE/UhN/KeE7mRTgq5iofuGSxxfZn6LOoKiqJp0nAy18PINanaZ0G?= =?us-ascii?Q?7qHKdYsN5y1Q7zmrS69DF9prvh+YfX8cBNKHQbLtFo5IWV6FPU18/nei/YHr?= =?us-ascii?Q?omoBksZz8TiUdhsbpBS2FMBNxGhrZZ+5dqbljxVJCf3OpEIORtJZvKC+0qRq?= =?us-ascii?Q?BrQU1fVQpEIoO/Ux1Z/H/VEi4zBhY8PvAErRUFbdThHY407YKNPh7tV7Ifsp?= =?us-ascii?Q?j/GH4ZbHJo/J+XBHO3B/ENziIyFGcNaoOV4CLcLAayP5bkoALP8zEWdq7gxO?= =?us-ascii?Q?59w2gMuMWSj5+/iUkMLbi/t6ug2PBnA7+TTdwYfwvrPDfKOqGULW2UK8BoxC?= =?us-ascii?Q?O/h2nAhsb+m1A23VMyjixCn0xXtGsN6Lib9lME4bGwTjvvk1mRE4V/xnIBZc?= =?us-ascii?Q?5AiCNxveXx+cmJik98QhIq4lUZpV1CFu7LiGkXZzWb+Oxd/b2AC38nZpRcDB?= =?us-ascii?Q?osCAfmJPo0oYIWoXerlF7i/SzIYHBA9WeEVLvu3xOGgLn7H2BXG/0VkEl58U?= =?us-ascii?Q?ltIUcC5tjgdnyP+6EBT6GDdkCV0M0al8wjaI+UpiooQ3i56rbVUuTzkH6EuP?= =?us-ascii?Q?gAY4WhtYSL4afTKFapWxOHCeKpXNoOG5kxKYLgQr/A=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?kzZRHq1rKStpqokafVzdzUWsvIsk5MWzHEWbATs/u/Koo13Tzq/vmJKcj7o7?= =?us-ascii?Q?VrtnC476UpTghitQD6/hieGZbdnLXdbJ7SM0ioO41cxgewRQ54ULw31HL3dQ?= =?us-ascii?Q?OKNoDps53w+cPOFIte9Qt9jA0HkSPiFz8Y8CkQkcbHKF7FzXV3fz2j4PPKks?= =?us-ascii?Q?rZUMC/k7XK4E5rzqzrQ9j48xlqGd7EJRwshNScJl+sVrKskUefE0Ny6GwJ4+?= =?us-ascii?Q?sCv++5hjOpuv+DmHRgocfJSlTYYVy3t78gNrHI+YnMCWQRkUGur0nTUfRDCn?= =?us-ascii?Q?BXSQyuajHeofGFghn5HJu4Ze33seTzTn8AIXU8CrlC2bD5zGrlqIisHTIlQt?= =?us-ascii?Q?HPRfx8pDGibtZYSORJPB8AL79v+CzqI5cYqypjyzg9q5OHOT7ghwVU7E5KqZ?= =?us-ascii?Q?cBuTaOIz0UY+SxmnkQqvUsfL7Is0Q3c+usIGnoh3SpHoiC3i24e5dQw8FY53?= =?us-ascii?Q?zhCWeAikscrxmo8/btAVGXWM6k2PzQ1dKaOf760fbKxXoyUEk4sgh9Ih9bdY?= =?us-ascii?Q?psKavL02/96Xii4jjkqHeLVE3tT1wBu1eGhxtYe7CgcUqJhIhqhxg78+hRBy?= =?us-ascii?Q?TA14jP4YR3FlZZ54xH3nUejY03rBMmdn3ibejGOSKL2rHaIpOByw6XTwsAta?= =?us-ascii?Q?O1Ug8tFdfu1sUGE0nVtuj99MS3N0RRzWWDCWyR5FKtPcqcGPSq0A30uT1Djt?= =?us-ascii?Q?mjF8VpJe+nevNqKZOJaR9ugqKGoXIgHYoQm13ateo3WekbmdT8mILVdw/aqH?= =?us-ascii?Q?BvyHYxmO4kUxI3uiUHK7PdfkQ61x8Oln5wdr6DO5COhcb+agcU8Q2Bjvt8du?= =?us-ascii?Q?FfCk5sa3Ai/B8a2cUTmjq7N1IfwcrxarE7MP8yqbmb2uFFnCRh5/5TtFxFPW?= =?us-ascii?Q?LLCxHAmy1VRHyddIoMsKyr9/8VZ0xVrc2iP0sd5cB68boWEAOvoJrHrG4N5a?= =?us-ascii?Q?akwtNeseXBjEU4jRYDVuu6l5u55Smw9jZnzUJSgGHGLkNqCBKJCuFKA54luj?= =?us-ascii?Q?99J75r4toHdrp7Z/oM6bGpNP/IApV4dW5m03/9pDnS58JyIs6g0+N2pPkZ24?= =?us-ascii?Q?VdKWcFdPDXqyJRUH4o2fK7JV6VFk8UV2fLOff7SpGMoDecEf45kJHw1iouYE?= =?us-ascii?Q?p1FkInqV50Qoo5LcVg5tMu6nslx/GgELsWES0EeODrny17P2wlh1tX34/Hkd?= =?us-ascii?Q?jzqtfyBDAKe9e7Y0jAuOhK+eUQkKATvEwL6ftQ+fdM9DwgSi5tRs9zjdRbIB?= =?us-ascii?Q?qhlIdWd2mcAZo6ssKKN3B47gOZqb5/fdMnrmYpZyJG5lXS3iOze8rv1eKu2s?= =?us-ascii?Q?pW6g6+n3wHVKhVK45fuc0rgsLiIQVSTtACmewyKqiHB8AguxW70pknUPwDuW?= =?us-ascii?Q?UZtaKCiBRUvh56g207/zwHaSZEtoBE4KTeNmDMjg6Zmsl3pw/lecv5a5zC3n?= =?us-ascii?Q?px0c1pD+vSv0Lm5k96GB4CtxqimAUq5Ti9uGEmFWWmNApnaKFw0RLRhrs2hf?= =?us-ascii?Q?dQwE7gcA6/nt0e4Cg6bWbr9MlzkFn/slDVn/FzOoKt7M5aKVCvAxwu0KcZpl?= =?us-ascii?Q?MKmb46vTza9pTtlgJWK3VEvGqwv8epdUXoQ7T1Aqh+FOsizqlvSxx1FmFRS9?= =?us-ascii?Q?yg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: K56weSQb7N+wiIEofK98AG7B19OiHnqtyhUrgkfXlWWQKxwnbtYP5xEJLLGte4D6Jluv7HJwvj3DyJ63+4PYF8kueF66El4v15U2ywyjFy0E/ZFsZUpqqx03VGFdHGMvNY5qKBeRsOVzcoyttAaT3BuBCn5OiRQuuMcBkEixJ1VZ3TzcjTYVaEesP5zzzctrcE0DQgxQNLJ+NhhiTB6HGoB3dMIWOUEaPEfqPWCIlt7ppP2evku2I+8MKI9q60bEGCIM30eq0NVOZNw7uQoGj3CkQGPDW9FAvAAWIjLjuWUv9a1AqkdMES/iRa2TawAND9ynOGX+8fkF7IUzmenwKlBvJn3UWYiQJ9duYwKsYccwxfleQkSTyITZZzIWatvescfJ8F3+gTkMFb9eyZDKCQG6r/xQQ1I2Y7Ylc1cfZ5hikUHfzlZd39fMA0ca53D1KgViypqfoAHPqbeoPqsTNJ627LdRFWlp/ZRzo/LAGmF5Lst4nfjIKMetm6W/BUjeCviZDBTI01D3Qmp+QsPA+MxpASypV78WSLXHDW3pff4voNwFjIrDPmGNDVK28hBWl3QWUeBNG4s2H0I98BzYILAb38vjvug9q2CnOgmPjVs= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7d00aae1-c204-4b6d-65a7-08dc7eae29d6 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:07.2397 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4X80sMRT2/zshg1KNS53hmDs1nu6M3W8+fLTPkJKwYxN2uDjt8nfbLCOU6hHtxm5Bj7RNoOg5a11zBMqPnI3IgDSsUZ4oVXHeBdav76+C+8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: rZoeRqIuWdDNU5XlM7OSNSEjdQ3SA93A X-Proofpoint-ORIG-GUID: rZoeRqIuWdDNU5XlM7OSNSEjdQ3SA93A Content-Type: text/plain; charset="utf-8" Reuse sched_dynamic_update() and related logic to enable choosing the preemption model at boot or runtime for PREEMPT_AUTO. The interface is identical to PREEMPT_DYNAMIC. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Signed-off-by: Ankur Arora Changelog: change title --- include/linux/preempt.h | 2 +- kernel/sched/core.c | 31 +++++++++++++++++++++++++++---- kernel/sched/debug.c | 6 +++--- kernel/sched/sched.h | 2 +- 4 files changed, 32 insertions(+), 9 deletions(-) diff --git a/include/linux/preempt.h b/include/linux/preempt.h index d453f5e34390..d4f568606eda 100644 --- a/include/linux/preempt.h +++ b/include/linux/preempt.h @@ -481,7 +481,7 @@ DEFINE_LOCK_GUARD_0(preempt, preempt_disable(), preempt= _enable()) DEFINE_LOCK_GUARD_0(preempt_notrace, preempt_disable_notrace(), preempt_en= able_notrace()) DEFINE_LOCK_GUARD_0(migrate, migrate_disable(), migrate_enable()) =20 -#ifdef CONFIG_PREEMPT_DYNAMIC +#if defined(CONFIG_PREEMPT_DYNAMIC) || defined(CONFIG_PREEMPT_AUTO) =20 extern bool preempt_model_none(void); extern bool preempt_model_voluntary(void); diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 349f6257fdcd..d7804e29182d 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8713,9 +8713,13 @@ int __cond_resched_rwlock_write(rwlock_t *lock) } EXPORT_SYMBOL(__cond_resched_rwlock_write); =20 -#if defined(CONFIG_PREEMPT_DYNAMIC) +#if defined(CONFIG_PREEMPT_DYNAMIC) || defined(CONFIG_PREEMPT_AUTO) =20 +#ifdef CONFIG_PREEMPT_DYNAMIC #define PREEMPT_MODE "Dynamic Preempt" +#else +#define PREEMPT_MODE "Preempt Auto" +#endif =20 enum { preempt_dynamic_undefined =3D -1, @@ -8790,11 +8794,11 @@ PREEMPT_MODEL_ACCESSOR(none); PREEMPT_MODEL_ACCESSOR(voluntary); PREEMPT_MODEL_ACCESSOR(full); =20 -#else /* !CONFIG_PREEMPT_DYNAMIC */ +#else /* !CONFIG_PREEMPT_DYNAMIC && !CONFIG_PREEMPT_AUTO */ =20 static inline void preempt_dynamic_init(void) { } =20 -#endif /* !CONFIG_PREEMPT_DYNAMIC */ +#endif /* !CONFIG_PREEMPT_DYNAMIC && !CONFIG_PREEMPT_AUTO */ =20 #ifdef CONFIG_PREEMPT_DYNAMIC =20 @@ -8925,7 +8929,26 @@ void sched_dynamic_klp_disable(void) =20 #endif /* CONFIG_HAVE_PREEMPT_DYNAMIC_CALL */ =20 -#endif /* #ifdef CONFIG_PREEMPT_DYNAMIC */ +#elif defined(CONFIG_PREEMPT_AUTO) + +static void __sched_dynamic_update(int mode) +{ + switch (mode) { + case preempt_dynamic_none: + preempt_dynamic_mode =3D preempt_dynamic_undefined; + break; + + case preempt_dynamic_voluntary: + preempt_dynamic_mode =3D preempt_dynamic_undefined; + break; + + case preempt_dynamic_full: + preempt_dynamic_mode =3D preempt_dynamic_undefined; + break; + } +} + +#endif /* CONFIG_PREEMPT_AUTO */ =20 /** * yield - yield the current processor to other threads. diff --git a/kernel/sched/debug.c b/kernel/sched/debug.c index 8d5d98a5834d..e53f1b73bf4a 100644 --- a/kernel/sched/debug.c +++ b/kernel/sched/debug.c @@ -216,7 +216,7 @@ static const struct file_operations sched_scaling_fops = =3D { =20 #endif /* SMP */ =20 -#ifdef CONFIG_PREEMPT_DYNAMIC +#if defined(CONFIG_PREEMPT_DYNAMIC) || defined(CONFIG_PREEMPT_AUTO) =20 static ssize_t sched_dynamic_write(struct file *filp, const char __user *u= buf, size_t cnt, loff_t *ppos) @@ -276,7 +276,7 @@ static const struct file_operations sched_dynamic_fops = =3D { .release =3D single_release, }; =20 -#endif /* CONFIG_PREEMPT_DYNAMIC */ +#endif /* CONFIG_PREEMPT_DYNAMIC || CONFIG_PREEMPT_AUTO */ =20 __read_mostly bool sched_debug_verbose; =20 @@ -343,7 +343,7 @@ static __init int sched_init_debug(void) =20 debugfs_create_file("features", 0644, debugfs_sched, NULL, &sched_feat_fo= ps); debugfs_create_file_unsafe("verbose", 0644, debugfs_sched, &sched_debug_v= erbose, &sched_verbose_fops); -#ifdef CONFIG_PREEMPT_DYNAMIC +#if defined(CONFIG_PREEMPT_DYNAMIC) || defined(CONFIG_PREEMPT_AUTO) debugfs_create_file("preempt", 0644, debugfs_sched, NULL, &sched_dynamic_= fops); #endif =20 diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index ae50f212775e..c9239c0b0095 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -3231,7 +3231,7 @@ extern void __prepare_to_swait(struct swait_queue_hea= d *q, struct swait_queue *w =20 extern int try_to_wake_up(struct task_struct *tsk, unsigned int state, int= wake_flags); =20 -#ifdef CONFIG_PREEMPT_DYNAMIC +#if defined(CONFIG_PREEMPT_DYNAMIC) || defined(CONFIG_PREEMPT_AUTO) extern int preempt_dynamic_mode; extern int sched_dynamic_mode(const char *str); extern void sched_dynamic_update(int mode); --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 6C66F3F9FC for ; Tue, 28 May 2024 00:36:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856590; cv=fail; b=G8D5Qu/WAu0tiXolZmlv3/2iuqftwJ3r4kV5ade6sKbLBenbJRFPFHCoooQ+wVLTG05usBwC58izRPlvtp7DrDdfzDWwmM66GQEfgE3OKUeaQwrhH0RQLoNGa7cP9ukJDOPQXYLJtcddi+oQMtjthUqrn44l6wVEoIWWMQVjUe8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856590; c=relaxed/simple; bh=GTl1Vj5CaMpVkcSFhPQ/wtSV6wgUx61h8Bxpl/hbCiE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=qxd6slu4JHFdgxCdCETYHZOlKbQPN9gKB6E44QMxNcIUXbIjZnmG+BiUjBy4MUGyEnG97Kc60y+LOr6FpL5VuCLinrL5R3c1e5XuJ2WC7M03bjROwbL1SQH5qBwxscBG6q98PG8K4UxQR6mE+IeZH085dDzp7Cr3koZeTaC/ELg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RJR72T027730; Tue, 28 May 2024 00:36:13 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DYX7Tvq2QNJ8VjUJCxqZh+pc2CGD9rZAvhEhJH1ssuI4=3D;_b?= =?UTF-8?Q?=3DOqAmpsbvVO8MiyDZ8jKsVWpRtRmQsQB/70ylBrFjg8uGR+wf4XJz/VD1XLGa?= =?UTF-8?Q?IyR7cqw+_iPSYqGBbgMjpyA5rIdmE3bXQO1hN9x2p8bY0JJ05Bf856LzMi4xQKx?= =?UTF-8?Q?3b3pLLNi8RS+H7_FAkGZ1D1mrS6Ei+5+MfXdIhDp8rl2vrUVsojyeNQEUF6QYEu?= =?UTF-8?Q?yD6/LVEApHchKIdYN+4P_4ZkdetI8GYGQmPxS1qj6JhWiX6Fm0RTM+7aUKRiLsT?= =?UTF-8?Q?edzAv5HtO4fTiBmU70AtH0IdxZ_VmS2yYv/eAPkfYN9LGTu2tuyeIyvoS+mY9m9?= =?UTF-8?Q?+qzv/UD3pnRE7osYWRi5V33GX7Y1K/sj_aQ=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8kb37qy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:13 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNMbXa016167; Tue, 28 May 2024 00:36:12 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2040.outbound.protection.outlook.com [104.47.56.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtfwk-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nL1xmGli8TyAoaqTKoH6j39rLrX3TtwDrNQcpfUa63Intx63cIqIOqwLJK6Ag5iBRRjW87UV5PpHjMXtdhgaZpKnvdVJ+JhQjdadb3Rf2zre/6bkBTM+sFHa9l3+TLjTbCgoEqa3BapK/W13RBFKD1eaAHZJSPHz6oFAmShzZYdmOZRI4hRdY+ibI8LK7Ktq789dzYKBWPv/C06ZRWpDJHp1DpwTBwy+BBCz9qab1uONxI8cHh2wybC/CIrM/Uo4lh8vzprs+3g5ZwxvO/7sr7aZFgDPZZfsNab8Le9StA16bbzGHnaf0q8VTGzrhIUpvbao2sXbn08dZBH2z54bqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YX7Tvq2QNJ8VjUJCxqZh+pc2CGD9rZAvhEhJH1ssuI4=; b=clMi15ygEYGVlQSprEaBQozVi/g6ruu99JXHN7nBDAl7nfcMNeMx+TSwzEZ2ezQ7KqEb1DynE+XoAm4ZLYudUT28t+VTPdFrxDl5A1/0/2bUrj4UOr/prdjsSSXStsQptbkA13h3ZbaDve3RprbZYUFpTVMZofHUG911wzLipdhnTRbrS4+5nySrvjKYkRM4vXNK6boojyc6ZEdUYh0cbMT+56pvMaHfgxHBdOnWHzQPgYQg0HghjTCnOsvbFyUZhcBFjWaSlZ+ispSWIISUc2+7if+cBXBlal/x6iMd/ALMi8aNeswr7u9SZfJtZH+Ryi0spMcF4XB4IlI2tHTPgQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YX7Tvq2QNJ8VjUJCxqZh+pc2CGD9rZAvhEhJH1ssuI4=; b=st7676dqmA+WmHijEOo0FZpPVEdH7vFL/Wcrndrl+FXp3p43V1AgYZgB5jhG6jA20LCC7zLoHK86GcRRl1jhOr6JRZwD3/nJ4xIG4ZnrI+n48/BLMtk+WPSAlnHKVAB71Ky0WP2Scn0O6K9YW1nQ9nX9DWZ0ZDderOZhNN+Y9ts= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:09 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:09 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 14/35] rcu: limit PREEMPT_RCU to full preemption under PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:00 -0700 Message-Id: <20240528003521.979836-15-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P223CA0026.NAMP223.PROD.OUTLOOK.COM (2603:10b6:303:80::31) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 80f5ef99-799f-42a0-d084-08dc7eae2b50 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?NGc2+uT2sCRZvB0Ao54/p6tsmKnHYwKVIGQgDywNs4fTIk5SW5374QOuh08K?= =?us-ascii?Q?bAtfukmnpOE+dNYpZ6R8M6qKg+vReXvnpphobT7Wwdy4hYdwlDJZalZZvkbF?= =?us-ascii?Q?Ae+g3Qte9Mal28axj4hRu0VQbeKyg+eYKuewdIVN2fmU87SVIoUKtDMWk9Uo?= =?us-ascii?Q?CxNN03M128b00YcLpXzh4v1fD9c/sFN6opedZfDES913SInFQ2bqskiIyX3e?= =?us-ascii?Q?i8f5qBCADmtAajjQn311ckyGACgsS8uWOyzc/6UHwLuMQh9Yh4NrI2eIP4Bk?= =?us-ascii?Q?tCckRpawazQw/yKFz0KVlj54BJIP9/knyWWXEVz9S6XP1+lMudUzh9WsQRMW?= =?us-ascii?Q?sGUcydeKTzOWDQ1TGmXvVWnR5auAuTMENTQFO6JCTPf398XFh3IwLgNe/JRf?= =?us-ascii?Q?l91jFlTdhSIM+oiGKOHhHi1Vl4UJzr9OJrX+yJZ0HLjABhgoD5Ckj4CD5b+9?= =?us-ascii?Q?YV2piaZzorZm9tUEzQ5sR0kx0Ha2khK82GbcFhbFWuWhVvpcPxPJv7PIEEuL?= =?us-ascii?Q?IVdkxCHIKNI3WalzV8tn0osiokdHE68Cfq6+teix8TgL8aVLxv7Jq16EZCSF?= =?us-ascii?Q?z6++wmMmqlpMms3dJ0mkywrTjfs3NX7uPLxQAJV3h2Eb2IV+EPPW1poOroBj?= =?us-ascii?Q?0mHDH/sNVghvXxsnkOtNIPiOpySU8VQnhtZ8uh+xnqCKEfKDHElaV5F9CHww?= =?us-ascii?Q?ab7HeKwNbzO6BEgn8nYtNqUynwWB9vagbwnC9Uv+6TpwYYrH+JFVy9PVLHRI?= =?us-ascii?Q?XdY/FFIX4LEmLZTPHhtN/ktB4It3k46RLGAOf3AYCgXdhWlfHn9HpVcM1AEK?= =?us-ascii?Q?rS0/p2lzyKSZnMreZS0xdXQn6/j6kLErczMlqW1kiYofI4byCl30DwOugDsw?= =?us-ascii?Q?dC1HPvsZpeE40jpW8ncD5ke5zrL9pFtKqB4/Sd5GZgGn+QWANjokOSARGAor?= =?us-ascii?Q?UTD+37Z0llEF7dyU2j1+wqwASFJqsiuKuepeQ9l2Klw7Oj8WmyIBu8UGOXhC?= =?us-ascii?Q?E7zoE/QDlX2a9CGZfAaQ2l28xeMwni+VrGjxrS6Turk6gbeBZ1t/xatvHvIl?= =?us-ascii?Q?CveIODkNwGqHnNbDTRUoha7X9kIAAr2oO5EqWvyLuOpiuDlkZ3JnqdRABGXm?= =?us-ascii?Q?qBHUhx4glYM5lKUQzku85gYvSkAizk0HbWylG4DsDBHMqWRhgjTcxD2Rjvqh?= =?us-ascii?Q?XmNLjgMukdeOfFIAd4uHpPTXWrDOF3u0dQrI5gSYCSWTOWWBFJ8iSI/Rw5Kr?= =?us-ascii?Q?YSwyZgTAv+I9ZQMGklyf+EAJyhdYXyQ1n+UER7pEbw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?d9tmOp73Wfo+epHiHt10p84GSiPbIQOj8kCsGgPjKwAJBw53jsfBzpWsb9Dk?= =?us-ascii?Q?m+5jclD1gYPcn6dDLiN2ugXg6Jq3fragYSxsuiADAhte5DAbvtQmTbtB6AKw?= =?us-ascii?Q?MoQW/QegpjHjdQ3EYJiuBPCk/pODOOiCX5pXdlb9x67Zn+hUDelQnDL7T8uR?= =?us-ascii?Q?m9wtGoPVR+oTtDl/iZJvsZdQwWb/nAmvvWEetSYcwsY71czkNqWmKAOac2HC?= =?us-ascii?Q?dhD2g+vBTH/skQpNob4s6GaInQpNEPPCC0sosLws81BbJaAioaXZtRyBmoKI?= =?us-ascii?Q?vwbS6o3iOyiIj8+A7QoIs+xx5s8DjbwYWQP1dCtBGpBQ0grO6DG5TxB/+YNK?= =?us-ascii?Q?8fLWAPrYnZ5H8HOMPbIxXHXvx43uuaQJiDOdbCPPQVQN6ruNnL0vXabXamNw?= =?us-ascii?Q?FIfm/oiwP/fO76EHKjMHYt2hTTf5rBVzHWaKD6GHTDFcxguYUsDgd8chVPY0?= =?us-ascii?Q?NqA8fzvUJGPDnneDxFzzgsJJRDSBIM9oyflWMdhE9EO2t8lCDXiHwI0iQfm/?= =?us-ascii?Q?hUglkOKuokntgqxXmoS/pnh1uRRFj5TPb4Rprdh5h3BP0WK8mhVnw39LYIZ6?= =?us-ascii?Q?a4n37r3Y3NPps9l0U4Bua56NtHJxkpx5dgIU+ziV4z1hT+KU+vddqwmonYfa?= =?us-ascii?Q?F1NsVW3R6Swk99+VmEaCm9xjaWjjclwF3oQfCSA/m9mpTckyD/BFwolyVSFe?= =?us-ascii?Q?1V+er9xymyIgWeSD/R3NLZ00Pss3CuvqQIcZLPI0Efg2yXtrl5dXfSrwsccr?= =?us-ascii?Q?SP8JsqdHCo4svkdp7xtzn2H8Gz7+4LaqM67Lc68Qd/SZ2vXwFknTDxoNEKJI?= =?us-ascii?Q?LVoT75/MITMsRcNmA/K2segACIIshY7t0eJRvC9rKzV3vPUHA1CzZURbVWnH?= =?us-ascii?Q?/U071iBigkiHUcXajzbhBK7qp2x3+++0v3GCVEDG7PFutlZzJy9gbskKqhrQ?= =?us-ascii?Q?YlM/LLmBwIXIJ838W23NmyL7ubpAdg+QZfLjkMQwL9gHR8tapoh41ESynbL9?= =?us-ascii?Q?zABtIBKQstX8U9b38rUnEkh07CDcOeNOyHspZlI0gksqq5fhb6CTZR5kHKoO?= =?us-ascii?Q?j3MZ2adTEFopxYB7ma33KxzxK7OL/TG1dg6+T8UG9fiRFSEMw2+spWySliTk?= =?us-ascii?Q?tG5N1UUPy19krq8x73f5djRGVe4XPZjSv5WkS2kx7bOFa0DfmTU+drAvi6Ip?= =?us-ascii?Q?xJboyoOgE1NnaswRWE7IFUvVk4qcMEo6EKM49nWlWJ6hLGVsSJsYVC/cZApt?= =?us-ascii?Q?HzyoXojlbl6sc+nyYoX0jF/qYCGgZh9Y/xRa1UchqQA0YE5ve43n+ymI0ojc?= =?us-ascii?Q?N+HlBVFk9fpEPzAx2JoSBff2RQ8gPZX1RxxW1gyIDWAxMOfWBKMIDbh+y575?= =?us-ascii?Q?g0VQApVd9aX+zcdxNOKpGYL8bLfLp/CNsW88zwhrqtUMeyNtHoMq/MkYKxgM?= =?us-ascii?Q?U71dPqGHG/vuAE22nkm9OD2Q/zgXElZOhY22Eb3R8j78jTUa1tWh6GNhkIlL?= =?us-ascii?Q?ouSmBfxGHG2nmzwHIP2+CcMVORrV5l4BrM5Ckl1JUxIXn5LHI3wpxXj6ELaq?= =?us-ascii?Q?CJefdFJoVliUyQ3zrhirWOgt+PJRO22s/6U4KQi8rr1lKNFn9Owi8OfYC9qg?= =?us-ascii?Q?tw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: r9FNCbvHqEKbWyXSzXxmKG4CIz7jjRccQjg/N1x/AUb8lwXk0RYPbjcHccYU8g7g4B3KkheXQrZz5ZXsVyPk8UwADuevxMBx/VLCDVySOTMPNdLBJJQECFg7TFbC3XtkqaNomElkhlTYvGQI0i+NA4OBQiqJ14EgND4ZlKNeBOFqVZg5nfdGCD7ca6BP7VqUybjjxaAl0MmU2BIUm2w8oaCZFoP5uTGxCZuLtm//4gSVZPvQsJAqcK0TcJ/GspesIYt/TtFSaxDCSPml7gMVQ35YcLMjc8A4FeHj/8cmPufLmI6rUHEjfeDfuKvMGbxmpZEqUUMIhcuOWgzGLzlM9qmClzbcSTzqh4FSK19pGHZcSnKt6TnGFKxfn4E+94YI+I6mMROOU2kCNdt0OI19i6m57dS1PhBEyhqmcaOIJPyYPN7CFCAgqLM7/VYYDve4Tr8wo0DSsjvaoKQ/+UcPdB6t+0v9IiMdmkMXklvFG5Sn8Umd9SvXqHhP2zmcCwx6tZgNjd3jjM8E/ZlLoCnlNewM63IOBGRmlBvM6wHqke6byf9EmfDgD5UKsKpAdwDDkTj+8pCznGEAOHMMfH9arpeDoakxj6fpVFuR90gMaeM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80f5ef99-799f-42a0-d084-08dc7eae2b50 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:09.6761 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hQYFCqzgeluDJX1y1ACnHkRUpuiZwF5HUa8br5PkePuDk4Fi2naTFECCjawPE06id9JDWNvlZ9Vczd2jCRtyA6l3ybBPE3V1DpjHXIZiteM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: MgTvxlWSaqDyBlDN7sh6PIKIlgBmHBvZ X-Proofpoint-ORIG-GUID: MgTvxlWSaqDyBlDN7sh6PIKIlgBmHBvZ Content-Type: text/plain; charset="utf-8" Under PREEMPT_AUTO, CONFIG_PREEMPTION is enabled, and much like PREEMPT_DYNAMIC, PREEMPT_AUTO also allows for dynamic switching of preemption models. The RCU model, however, is fixed at compile time. Now, RCU typically selects PREEMPT_RCU if CONFIG_PREEMPTION is enabled. Given the trade-offs between PREEMPT_RCU=3Dy and PREEMPT_RCU=3Dn, some configurations might prefer the stronger forward-progress guarantees of PREEMPT_RCU=3Dn. Accordingly, select PREEMPT_RCU=3Dy only if the user selects CONFIG_PREEMPT at compile time. Suggested-by: Paul E. McKenney Signed-off-by: Ankur Arora --- kernel/rcu/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/rcu/Kconfig b/kernel/rcu/Kconfig index e7d2dd267593..9dedb70ac2e6 100644 --- a/kernel/rcu/Kconfig +++ b/kernel/rcu/Kconfig @@ -18,7 +18,7 @@ config TREE_RCU =20 config PREEMPT_RCU bool - default y if PREEMPTION + default y if (PREEMPT || PREEMPT_DYNAMIC || PREEMPT_RT) select TREE_RCU help This option selects the RCU implementation that is --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 E90B0446DC for ; Tue, 28 May 2024 00:36:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856594; cv=fail; b=qgm8vW6bIjSOhsIubd0/VXs+OeGvVeQ3iODooP6Yz0byp0XF3jJWCqMSykIpmPdDqaaRvJb94OH/9WUSQoSUXcvQDhufTZ3MKM7NmTQzw+f1jnqkqW+Ib3IVzeo8aYfi6cGwzL3claDrAMb3R6gnV4Ga5qwSqBRWhA0X7/rgNCY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856594; c=relaxed/simple; bh=GJqiYwoAIuNvmvIwhRut329Jg/nRaGIIDy9QD8bgqBU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=tFI1H7yjH+t+K2TCGDlj5hSStZaRYZKlyaWLe4obSirYi/r/WFiOpap3yEmYhtwXvlisTC65Mjb1QGdHoKtqyUk68Q8lbIXodam9FUktGOGQE3rM4g/XuwjqtaNaN/Newws8nUEK18j2J4OyHjSNfMf15CMdLem/AkX9b1Q8ao0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RMulJi022228; Tue, 28 May 2024 00:36:17 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D1oBBDMs4uDHKnlauz8aqndzdR6p4WisYnzokQGLMDVA=3D;_b?= =?UTF-8?Q?=3DAoy6J6nK1dWDsPpH/SBRr261ePxgO+s6zxhR9s5N1uCfrCYVym8ouxIYabNt?= =?UTF-8?Q?StiSa9aa_g/9vjS9+frrFqVeT9XiQqJdqg6cqaVyMqcXz9SBU3VUcsdkPoCGNLp?= =?UTF-8?Q?4nbAns8tUeNtrx_zvkmSZAySnEluFF7r8FKwlrZPm/d9UEFT9Eh3KtcyypSArtq?= =?UTF-8?Q?CggzwwTQq/4PteNuhbkN_yERI7TcmBLCeiPuHnUfpAV20lGf9F3Q8Qw8LORnZ92?= =?UTF-8?Q?NfizzP6rusMhxGYnWb6yqlyoYd_OU9S4gr+WdlJt3jwQHaBO5qYWNXQF5awDpNq?= =?UTF-8?Q?DfmhTnX7GIMbFCdn9/yBYcpZS9Oab29q_WQ=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hu39dt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:16 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RM0RZm025868; Tue, 28 May 2024 00:36:16 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2040.outbound.protection.outlook.com [104.47.56.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7xpy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:16 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UugXgDUAwm3sWNpz0QYBQ+aB6HnmcFVPO0f7ABpGIbB/xr/CBRrSGGtIH9s+a0dowSwH/WCz1J+4ei42vsKdy93YP84uQ2hArVMQX1EKx74cldZ9UHPOFJ7gpvQ8eWNCMstrnHZjjPwDr5E8OQb2bha3QlpjtljypCDwq9lcVAv93Jxp3yrvJk2IjaQvilEYjNK05ZJj2kXNhVJ0CXueDaUBKc2hzX/3fOkKp1GPsbZZJh1dOmkXzr/XlMveQfOzHj9EETHJh6igkmy8uC3BBVZr2wjSF2yzcztKDk7oV8ecWi2E+RmAwJMWAAYMmjxvaiQMF2hmf5NnTYRaIcVw8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1oBBDMs4uDHKnlauz8aqndzdR6p4WisYnzokQGLMDVA=; b=WB5SDPFemPI5+nROBUVK/TwOQw4pVeI5qo/DM6+t24IpDvNYZddSEmUBObh1MrwYllhOPXQ1b/sP71++3N8adQPLYoejcw+iDRDE6D6XCUaQAIOHYykV6FZSj2iI/+Cpu46dC1SLdZsjh0GH7D1M+mdTUyiTxJA3tLoJnuAV4dpE5e4fZXiGWxILTapja22fzQt2PkY/ZXFT0zQX9IXfxME+MCGJ2zFG1UwLnzpEceVYZTj01+p57bxRQqUXL8uKCNeo4kDzC4lb2UgI8/kfzlQ8QdmnsAtUxLnhpSfpiYtRJoMocjWbKuwO9IS5lC1nWN98yYvNOs+6xMxH6ITmIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1oBBDMs4uDHKnlauz8aqndzdR6p4WisYnzokQGLMDVA=; b=TzSHe+cwfXiVpi+GiG2t064Rrjwc0mh0mkFUGGO9jZ0hR9pds4Qb3EataSTrgORlRlHGWWLwZk88zCFVvqSnk30RjmeqVqsEkagN3XnxWsgF6wFUPdRD5I/aXK/YVCzG3BfWBkNhRW4GwBPwkBE/taedlY7L60i0skPmXGPue4Q= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:14 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:14 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 15/35] rcu: fix header guard for rcu_all_qs() Date: Mon, 27 May 2024 17:35:01 -0700 Message-Id: <20240528003521.979836-16-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0170.namprd04.prod.outlook.com (2603:10b6:303:85::25) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 4984a1e8-89aa-49b5-829d-08dc7eae2e18 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?RAk7puRw7zr7XRYdA6ZXt99khjN1H3jBCXAw2l7d8TEk2W8eTBfcH8jxTlZR?= =?us-ascii?Q?ewFc2TyL5k7PoKjFMkxJCOy5jUu4wBDNFsJ1Ut+sdZzl+x8CbmmtA9RcJ0P6?= =?us-ascii?Q?C/4tlyt8CxyiRr/LgQ3Gy0ZQ3qcDUO7IyNlj4gWMYUhy/er3b8nw4bSAbg+l?= =?us-ascii?Q?95NyZ8SJJ9eqY19Ff/VdxtU8D+VAkWJGJZ+8/SFGFUfczgrR+shDyt9I1z7U?= =?us-ascii?Q?Yew5mXDijKWIVeNUmYVcnZEMrLiEWE1HsaHlCJtnvLZpvF15gGbeLj3fxfBC?= =?us-ascii?Q?GnTFsqK7K2no1MRW4O206bmxzpTwmcw0mDPUH6vlmKsZTQ/7BWRyAeJwcoXn?= =?us-ascii?Q?MTS5KT9acqU1gAb0sM0S0k6Gddh8ogR6U4v34hn0Nuz36wYtMe4EfPAAJvEp?= =?us-ascii?Q?yFWSDfdQvQ6cz2k8REIcRo6bZxkE4CO1N/a7TmBB8PZsiJCBPoNkQYFSCcQo?= =?us-ascii?Q?WNWftjheSH9mqqM4TvFIsFzvaTclZ9ADyhGhQbTFnhUFrxlMW8Hq6ZUwW7c2?= =?us-ascii?Q?ZI5eUNNgsPA5ob+7VTJxjBWjX3Ok9vb4spsxY10TSVUvq5zHEPmjTnyKB4+V?= =?us-ascii?Q?pFh9G9frHVFwEGnvCU1FZqZbpDckiAwckhYSqG3DAJRSgDKVbsgQhOg73EFZ?= =?us-ascii?Q?3cvnGBLM7GoqG3bApoXsLBjmXe+NBtMZ6aHM+WmO8I1L0nBHjNQ0nn0mhTFF?= =?us-ascii?Q?O9drDewphDkIscbOrzlJxGl8J2UcNcm7ApaQRFZ3u+Ta/n+mPhFsLtAeNA6E?= =?us-ascii?Q?PNazmmwfzj7xM/qSkoOSlhZ04Dz9QQgOq8/GKTBfR8PEIRaXgrBdicuRppBo?= =?us-ascii?Q?cJXt9S1oOo++ILGxN1pt8Lu3UvJgACqOGA63rcs3pP0uFSFbf9+dieEnJTos?= =?us-ascii?Q?ZPK0Q4ZEMQYU1ifIQe2Oylxk0m4pVo15uRlkvM1BswpEIQBXZhSTsF87TW0y?= =?us-ascii?Q?mIG9LjbemnztcSVStL6JLU1H/ZYbUoqZt/57M9D6YXHoyp6V2HMYRkMSytu4?= =?us-ascii?Q?unudWRyz5PcX/TLSxSJIbXgT0gQwoU3WJouf+WteLjCphjPByNXxPmpeKbxF?= =?us-ascii?Q?yUpccu+p1uK5aYbKdRupExO8AK1KOcsqLJcteFi6PMF6Iu0OaCRzo1AE0duL?= =?us-ascii?Q?r9YEno+EyJyhD/Q7JyNKT0acAHZ8WddhE+tmZ7K2kLwEuv6T/+d2xxaQYFJ3?= =?us-ascii?Q?d2/CjGonuguFZh41UlgOOCHltpmJ+bx3GfwVzeBrdUVx6dIZcC8wVm5DWavD?= =?us-ascii?Q?6mPY065dzvIuk/cqHMjiXuUpOqAnbGloaRp3Ik0k2Q=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?5toMm9k2AWe0TXEazkI0/AWU11D4NRIhbhQQd/wJrumLkWcZv5/VgZ6yF2xV?= =?us-ascii?Q?IQHzVMXlSxlBXLJzx2hsYZT/AitGkGlNuhqR4dlb9uck8UoASOL7FvjWt7+3?= =?us-ascii?Q?lYLvQtHwmGYBWPGFvYHLbhkKJpT8hW5FOZwYVBiXlFrWYjJ7IVjUJE31oDet?= =?us-ascii?Q?l+c5hHcdAT89607Gvg6QC6rwaN3WN3+8RC8vz0sPPBrWYjX5nkD69GfJsKTh?= =?us-ascii?Q?Lf1YDA1JmOc/Fm7wMxg49fBBqyNMz7JO9YmReVpOfS0PWcVeUXJ6bn7VUbvS?= =?us-ascii?Q?mngs0R0H689TPvmLaVX3ntvBsEjyaCZYqixwht6Zl5U62ogWuKnDPN9roCvD?= =?us-ascii?Q?39+VnZ9/Xsd63xNkku8kQQWC6mASFN1yKqmXGQ6ls3l6LCKSZoTBZuF5BsM9?= =?us-ascii?Q?tkXdx9l9ZJICH/rTvnPZnqw+oCyU1oL2fY1frL1YkkTz43KkV7NoXiDfXwpj?= =?us-ascii?Q?0/ZdtB1qOysHFBdZImBrHaD7nhfvWwpQnJ3pYT1O3Fqi46KPFAko8VfuPKEG?= =?us-ascii?Q?OLRZjwuRxIxKwaW5SAbJipI+Zw0OZ0SzV5bA4UkShjOi0x3koPJP7cEl3ww+?= =?us-ascii?Q?s4hwUWHoGmVYFFLAwkpjtHrL/DI0RbxnH6wgY+JVH2SM9VjexqN6I7fRV1f9?= =?us-ascii?Q?DjWWkqt9RHLg3hWYYpNND0Q6RnR8ll0jf0w2CgD04i8Zx6NNg32PjP+6+Jfl?= =?us-ascii?Q?i85T/yvsHXCLnXE16wIfUoB+9TCPuGh+P41Q+8FVQh8ra33z3pcUcy6vYmb0?= =?us-ascii?Q?ld1Ylzm9YIWADr7aj4g/wvRaCt1CRXciyxYyTQJGjlmbzRAFHkCkAEifG5XR?= =?us-ascii?Q?WaXTd+jNsw3XMCP6Nuh0ewEqAjUeEeMfiCzluynmHN5Tjm7VWya126FYVEkD?= =?us-ascii?Q?j/TeEA4dlekbsFqpvj5UCfy/UbmKEgBBNwTshU7BqqzPyxUSIkGcoCqD7ZPv?= =?us-ascii?Q?zDzzAKt7+krQsWd7OwWzU3AN91j/sLGr/2uDDG46KZvhgLyEaJRBR1khitH7?= =?us-ascii?Q?EUIqBNkl0Pm1eW2NnwI5lggia/yBvnCW+Ou0XA39GUn/PSJF14F5UVPh+YcD?= =?us-ascii?Q?FRwkfEhYYuirJWyxt/ZHyWYk7cZSbhQUeCyQTPh37bqfeluzP/VcJHv0iOgF?= =?us-ascii?Q?7W6Y045tl4KNcn+qwCb6+X1psU1b3Fyzvc6GddkCVqfgVDRV9aeQr/FrsZ5Z?= =?us-ascii?Q?CGpRreO5fOpD05E9EW0gdgccpKiqCwZcRHMaizcLYfOHcz72wOjJl4t23vjy?= =?us-ascii?Q?xtwlyRJq7W6vOK7wQArcuftTT8kzO8bD9JvsCBQwA1eZOEP3E6v0ERzVkOI9?= =?us-ascii?Q?AoLs3ZuI1cV2YpnuPiX3/+S5tiobltV67ZyVJzUxKDNf1j48YMUpgXYckphK?= =?us-ascii?Q?yErpApXUXA/Dh2i0lPjt5SW4fgGZn062ZzT4Dh3ijGUhMqLtuWc30BU82N/P?= =?us-ascii?Q?/uVQT8Um8qwDzfZZweAJPSSUooNwJk1uTf5puj1XW5/DG79nJL91Zm9rSvQZ?= =?us-ascii?Q?Fn++LdYZpuV+DZukSEAWHVKSuvmfJRUVuDEOjhuER/Mm4Tyoc8fznfZF0DnE?= =?us-ascii?Q?zku9l7Pox7LzdL9nbtXYNDbvMxSs3jpfHjxf57zw8U0h6ucLwsxcGbm6u6c9?= =?us-ascii?Q?6Q=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: Uh/Jll4DjYvtJ11HEdb1jrVxv1RcuvrWtoHuuPeMKFbCdlSBywYgSpm5wK0pXj+1weFtcjL2YG8ca1FNVy3TM4mg7zcc1/yZZoVLjwqH1ikX2PddkwBvOE4X0GptgXFX1sZgFU0MXJZKD88lX0owHZ8F7VJXJWoR1bzjZLAG3W1AORkSDZwG1aiJZ3729j9YySoytckwGM7SPBHS7UatR/mZstJ5ZIW65RAsmJ3eJNeftdjymfNHQZ3ka12gAvVZSMOrpAnFO4AKqI9uDOnjs+94WBh8bCEbZlgp91YXrcd7pO0hZeUSUokRBnnyZ9JV64dua0mReJule2NPTTCcdSZqV1p2Rw//MBKHent3oK/14mleliV20idaVCK6/c3m/ZFuKchw7gyNSdnLzDP9tJGJwAjr3NnFD+Z/BCg2PcBozU8i2tv9KUU/hERtm/68U7rPUpjxvTABO3Ybg/1/SV/EAReiwCwgqaECBKndHanY5/g2t951bW2t0Hr0PQxj39inpQtghUUuV9L3XACY+4vvSrgCqI5SsBVgTNTjpqf9vIMwRUwZrKzJdbMaGmx+tNpE7KI9zHtWxJVdDJocfyAl3cohnz//OPtXa/kdN04= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4984a1e8-89aa-49b5-829d-08dc7eae2e18 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:14.3258 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PZkTmb7x7zeTfqKq6zlICXkztXglfE2f68WRodLzDg3tE+SP3MDpTnqrvyj+3rD2FiKHl5dGBl9cFzfmn0wTjjARIdPWpv/YCForn+uGm9Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: QzSvQFYmhBcXGnW8Ia31a1VwneNLZf4q X-Proofpoint-GUID: QzSvQFYmhBcXGnW8Ia31a1VwneNLZf4q Content-Type: text/plain; charset="utf-8" rcu_all_qs() is defined for !CONFIG_PREEMPT_RCU but the declaration is conditioned on CONFIG_PREEMPTION. With CONFIG_PREEMPT_AUTO, you can have configurations where CONFIG_PREEMPTION is enabled without also enabling CONFIG_PREEMPT_RCU. Decouple the two. Cc: Paul E. McKenney Signed-off-by: Ankur Arora Changelog: Might be going away --- include/linux/rcutree.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/rcutree.h b/include/linux/rcutree.h index 254244202ea9..be2b77c81a6d 100644 --- a/include/linux/rcutree.h +++ b/include/linux/rcutree.h @@ -103,7 +103,7 @@ extern int rcu_scheduler_active; void rcu_end_inkernel_boot(void); bool rcu_inkernel_boot_has_ended(void); bool rcu_is_watching(void); -#ifndef CONFIG_PREEMPTION +#ifndef CONFIG_PREEMPT_RCU void rcu_all_qs(void); #endif =20 --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 4602C1094E for ; Tue, 28 May 2024 00:36:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856601; cv=fail; b=JZTCMhTmzr9Rlx+Lv15StmF+pL3P/56mHtWQ0Z75XDKDAkGbMtkbaoJRPbRA0/EW8cAWvJ6RcfPiT2gO5VEu/W6ukXgj+pvXr44O38R9btOOM0c4VdPI1AgpSsnomDuFGAN729iB3bjhh80TtydbUkkIGLOeVB9lxcUWb6mGiZ8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856601; c=relaxed/simple; bh=9lUWvzxHZpOZ9cC86w4mNYxi5YkUshxcBmxAJN3aI8c=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=mluX+DuXZfOSU+F4yR+SiV/9CoeAMnNkbZaZLLs1L9In8bTkXVA8vDAqpm9wWRn87O2q4UXJn7yGSonRlDgJlMlub9/D6PVh5E1ITQs0U9La6VKd0X6VN/OouOaUX5cf/odOYaWLXfbaNYyZWvd8ykxbosqBluQk12uKRWx4Fd0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RGYJA7025223; Tue, 28 May 2024 00:36:18 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DIVrQcpJMZc8IN8APUEjJt3FMKCvaYshsPTK1xQu8Bfk=3D;_b?= =?UTF-8?Q?=3DKmNM0giZ5Zq+Rh4GieIZU9HXUMWwYbPlXGhxjBeaK3g0Wvf7UaKY6uusdfcW?= =?UTF-8?Q?JXfaB9lV_rXixDlBdrzqPxUF8ZRFiJg71rdKPSNPMcZSE6ymjDJlU0T0PQ0J5LL?= =?UTF-8?Q?s17Po8PnPCobq8_PeXCLIVF5SfktD0GX/DUyAvfA/JKZqtJhh5lY1uZ5qmX4WUK?= =?UTF-8?Q?EMphqKUdsr6R8op83RFx_h79J7mK3TFPWJJmoQjIX6W3cR0k04tGhHqzevGS4zJ?= =?UTF-8?Q?0BOqkOnKXuec64CwAfX6/6VCku_Bk9eXOQX2TikmLktdiXkyvRiMAsWrdoHpCba?= =?UTF-8?Q?Hb6Qy7Bjc9/5ZTamYhIJVNhM2tznb93w_WQ=3D=3D_?= Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hu39du-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:18 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLCf8x038346; Tue, 28 May 2024 00:36:17 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2040.outbound.protection.outlook.com [104.47.56.40]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc5057y5e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I3Rvmw2AV/QX8qPsIkBZ/p/wHfy9Wusfy/7+SCsbgYZXvJ9U5U3n34vFsI8KW5fO0TwffnzPbC7AzwY6g4Er+z/GtR5GFrX1XPXWyj83VeUyVhixCcQxDLPp4t5Fsi9WcldkV6+Iez77t65LAS1hXlk2JrAo9mhsys6LAaPbHhOuK2TgEceaUIkSIMfN7ks2EDX5d5p68lthM8u5Z8AYoFwOABBn5Z0y70C2T1Kmq7OVKbK68UuhdS1KoAPJxeOaevvYBUAcxpCO+irDtYjYQA7yozHk6K7T766lPqukTWVohkeQt81ULXrHsn/DnLWcwVVdxEanVzlKfVgS9xoZUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IVrQcpJMZc8IN8APUEjJt3FMKCvaYshsPTK1xQu8Bfk=; b=NvcZXHUa+sJC86R/huS/GSObokeEgoWTCcv/HRih1ySRfF1oCLO2v9FPevOardXmQmrsFDNiSjamI5S6XUesQIWsoSzmhGgwRw7ICtFpjOFKNGkbQXlpCBCrvzryzgSIGh7R28pVs5BoniwxytKg7FNpmDf5dkrm5L+2gaSIOtCbJ1kCSu4GEnEmQa4q0RF6NaOQGxIZeHUsb+rd4mlH8esBaNvw11nbcN+dboPADvRPy91Htn9zP6nr97MOMW9td2DxLDtqEL5aFBZWfc69knmzRwWa45cv78JYIt5BAgtUHF8MuRyNiRrdIGI0703eNIOFYXqmUsVfm45Z6YOizw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IVrQcpJMZc8IN8APUEjJt3FMKCvaYshsPTK1xQu8Bfk=; b=yBC4DGFsDbfSHQqgPxZwwIL68iRFHKzFfO0tn8WgJf5UDwioKf5FWH2FltHIkvFiwvFc1cmiDD3FyMRSbtRy19EU8nFBb6ux0l2IgPXouZ0nsRSIjRzbTyTkZVOR0I5YYrhoo7tIdXTtFEo7qehcouZblRBewAhtjoqrk1N1xsA= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:15 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:15 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 16/35] preempt,rcu: warn on PREEMPT_RCU=n, preempt=full Date: Mon, 27 May 2024 17:35:02 -0700 Message-Id: <20240528003521.979836-17-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0171.namprd04.prod.outlook.com (2603:10b6:303:85::26) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: c99fa60e-45f9-40fc-8f9a-08dc7eae2efc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Up9d7I6bhnJvt7lL/h9vlkbXLg+bbmvVs9vhvypKpjjyxYljlbMUek3X6rnw?= =?us-ascii?Q?pywOhp9V+DGhnG87rPxbGxruA5yEv1WDsjj+oBk15Suj/ubW3UxNaU0LBeme?= =?us-ascii?Q?5zCi2euFj8hrIdHehoJu6uzdcsV3xvSIOUeS2Vpq5razxcvkPhkXfovDLHxo?= =?us-ascii?Q?ia6CkJ6PdREmiFT0DE7Ej2ZKRp/8FDIK13V/AQ9Uw0p9R+aJXzwm8YhYZOUy?= =?us-ascii?Q?pL9Q1q+At2qP/omq/J5tuRrN4mr2K8PoZoo9MoX4an1RIHOIHpUSOgVzrtGY?= =?us-ascii?Q?3E+IpMGyDrJCbpjPjujSaaqbRNyNAhYVZvs2/vn0PI4UATloYgUKyr2YoVGa?= =?us-ascii?Q?4CODSnK+qf8VIrDMtBlTlrNULW6VHFVWhJLRilTO/LmOtdeJ8HvMYmRemzBB?= =?us-ascii?Q?tCHn8t0ErPrbreBsVv5c90NcxKro3jd9Jw2P1fsWEf6VgRrUrDk1TLeRyzW7?= =?us-ascii?Q?wI4LgqQk8EklaFx1/ePbq+xuCsTRb6OHVjifj9MwpvOgWUhoIGo4XzavnSlr?= =?us-ascii?Q?FyjoBsnOoByxHfTnukxeukOLtbpUOm7b1nBEIBNXOxtABTT8ixxkLMle4854?= =?us-ascii?Q?1A8MzlgPHqk3NsvTL/PQxg48AnOGLiqy/E9raNDkSA5hmcXSGymlgIht7OMw?= =?us-ascii?Q?UbdnvWfFw7CM3fl3o00I1fT4oVYZZzK8LMzqgCTKHll0Rcl0e/w8hQdb7MDH?= =?us-ascii?Q?cLQWWg48T7cafZLrrp+iMxDXWkbzNB5WyOCuu9WkaMw7hnZ1iU8Vn88JJ/1s?= =?us-ascii?Q?VveRR/gCWM7mqB6wpAGKZILBm7BaTTwnx0w0LvlWawNaBD+ppYs0Y8zrd1LZ?= =?us-ascii?Q?Xf+8j/zFI1UeUrUwn/C//mJZePh9v6gNw1AgqbxWhr04k+SKDBc949Psi7eU?= =?us-ascii?Q?B029arCuAuGzRTWLiXoHIDtHVvlm+GC3ZVj4TLk2iVGqQRxAA/kJa0shZoAz?= =?us-ascii?Q?2mmG7FxtQXqq3+T2E4b3IxGMsI8ganRRxIjk4heV8yDyIQ3x9NP8CYesymrX?= =?us-ascii?Q?Ds7iWkHsg34dZdPmVHrF/4h5UtIqn10mFVZ+Rjz7FEIw0G7E/MogrZJ/GtY8?= =?us-ascii?Q?awnjZdR+jvaO7ZZ+bGwljsLXP0q3qEh4jqA/pjniV22vW1zIRm0u27FoV/Z6?= =?us-ascii?Q?ipJ/bobbaSMSnnr5UbDfTZi6jTpRZu7dG5AJQFhjl99WFPZNKPlhJhig/cfZ?= =?us-ascii?Q?HGEXFhHSrVWAKSfUAWHbSRpzZt87zDBV5Zx0EQ=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?XZ6W9jdicFggdLC2IQ0Z//LfHfOVrkUkEXSjjrwmv5lbR21DuwvsGor30GWg?= =?us-ascii?Q?SF56EqVBUbtFydyjfTHCphPxmguKxs8Nq2nJ35kZZ6oxuYXGjJ3At4n66ULc?= =?us-ascii?Q?pQIizx6LwuJ16gzPXTlB+EzwA5MQbvVyRTKRm6zp/dzcb4xhDdaRTV8Hp2Ny?= =?us-ascii?Q?Iu6R8/ON8KA/2rqeGPkkVGNof4UBq+7HX6u8W88M0MMq/vkCleDCtEtunA0r?= =?us-ascii?Q?JyYlgyI595FlXJ4HoaxumddFn0+425jsam4Bs1BbSV+JoEzDqvb7CMLOnrOZ?= =?us-ascii?Q?4Rvyn94cw5EUSsM+PVZXJucSfJ8n4rD16Jd8OmgY5OoZJN9BQOuuCs+B0IWq?= =?us-ascii?Q?DsKkjtw0eJCsRXzBVT0RAEXlxSUpRcAXXrrBbVbJ7mfMzXGs3pQdE8Z59nPY?= =?us-ascii?Q?+JXHDysfbLkqYfr2CnmpGaVh0xOqNoaazaKSu2fPW/ESivAI9hKDToMaFdmi?= =?us-ascii?Q?enIyE++7DBzkQaiBqtDCEW9089BWjHM6D7mOy13/PyRBTXG/yRahTXuwrcqu?= =?us-ascii?Q?zrigyFODdYtMbQdsMHDwShRxWCBEIQT5v0Utr5jCyvLiikZ0b6PK8B+u5XXI?= =?us-ascii?Q?RRQQGCmC/KZH+o+Wtw5dQFymrkEFDWxPICQqZ6Hiy2T9LsZ6DR4ZMJYeMYkQ?= =?us-ascii?Q?IF+swKEDBzrrF0m+LYEqRF1wr6cMVvUEvEik1qLfoLrMV9M4FVJtO5IjTkLG?= =?us-ascii?Q?nE0T4M7YFYzMbLoPHEgya1f9B3s3OKBgfWk63OiFnnffYllXKXzfVYO2ySll?= =?us-ascii?Q?iA0qHHCa4CYB76fqOkRkTY2R6A7UQ3rB7vJJ3OIBoy04CV6ValCxAqxxxEkp?= =?us-ascii?Q?g/4ioxviJAXnCtN2af7zFc5e3MtCqDu/Bbd1AxHMrLWX7ru2eb6zA9y/8fRa?= =?us-ascii?Q?h7ODuWIXsbYgIskqsZw+zDq0v0lE1Pg6voQfPAIwSfXAFFI8Uzuia+x350Cz?= =?us-ascii?Q?J2RdoOmmePJzg+PvP3/CPuAzgLiItzw7r4CmVxITnkaesBTKuy+gZGwSksWA?= =?us-ascii?Q?+v3Dts12d5zgfIJsJr+NSxOVzry1y+sPnDzC5dFOePFd54ZZArFvqRj3m8ty?= =?us-ascii?Q?2T5we6XuplKyEoQrUrkxYCDyAEk20mYdlNNc6IZV4ZJeqh+any7lieOgwUBr?= =?us-ascii?Q?t7BLWQNdQHsHmwPHlry6ZBLBpqHa4OhSfA7zsCOD6w/9Bg/PcnNxwz+jIIQi?= =?us-ascii?Q?A2GWX6e5vZ1JQ3LeUnHmvU0RpNCivkBNQV5ESAQM8q2+s9B+4XcoZb9tFDjB?= =?us-ascii?Q?C9Scty/75U6jz68Hc/BDSQUHsTTMywCIjjXkPV6n/Cx9Fik06f5Za7itIYfH?= =?us-ascii?Q?+gGrWQJl6pHv0Ctx0ANaB1RGVvstaMtVuKPTcr8xIJCON9NyH00PMxFK8S1v?= =?us-ascii?Q?ZuH5SNAn7ps4iexJjM3EbGikb/W8hhQ7xPdghesT9irLlJXdGo+xbdN2qXl3?= =?us-ascii?Q?xIiPySPyPtj7PL9COVg46pUcXa+iIf7KN3ijvncO4f+nao/D89AT4Tzk8Nhe?= =?us-ascii?Q?LOnbUP5vjn5AJ38QY18ANU/IB0TKVKJhIGhEyN9K3dvMNI4lWubK+I4TSjEM?= =?us-ascii?Q?aDNjh4t6j3RdfkGKODbppiHIJZNe4Qvjxx5+la6DcmCypJAL+mA1YYGnNgas?= =?us-ascii?Q?+g=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ulHI4Quq2cwD0Nb3LjD6mdT88CXRse6O4JMlA6b/S60QdWtjQ2Oyarviw4Kcr7yIL0R7jTHs5RwNPOvFfWL/eKhJ8fsW18v9lKNzJ5KNIpa7y0JsdOWpTDyrdqzJ5mk1MjiIjmE75M2rz+r5c+Mltk+1SXR3nNS/XTDs2bVuz3ym3ODQ9T5pXQaFOtoJ5oeSI08Wc9GhLGe1Ngf/F8TMarB40EeyPd61QxT+k6HCwHrjmArnSJAgDnmUFooGeEDp8mqijxd4Ir09eWoSs19zog4eDkLWdALJ4ZxKepGsmi6vD3ZLfxuu4I2wUqw7G1mlHB7GGKKqDeFd7a9o1tv33laIO5doMjmETtDfBB6ykhWHpU5dx6pDrHo7/crxFMsF/OS+lJxdXHHsUGz44PHJNSFQetcBoMjbaGKx+dGRCRLyqOjcDXONce5AOt605dAb2wvMKFVjkrQsMU2JyFMLQIoOM04cm8HNPqflBRqNB4jI0F5XIQbKZyUXS142O3+s0E6kO0nk2ioJDzR52eoIu2N6aUbzY0rFh3SEoWdsheJFPqGLW6RAkcb+jbopCtuTeU4rHOvDXt/B4StjgeFLtLA/SPxVKw8l6o2xEITk9p8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c99fa60e-45f9-40fc-8f9a-08dc7eae2efc X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:15.8206 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ezj+qiJDPzcfvi3isvRAbTO8kIGsFnqv/aKcFU2s0g8vdap+aIVBX6iOIrWiIltz9pS0r1gRhoPl5ag1a6e7J6tmaQAwMNAVaHsLtGzv3iw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: 1Ujf-DHj2w4pTiFG4swvKiTmKbKhcZuN X-Proofpoint-GUID: 1Ujf-DHj2w4pTiFG4swvKiTmKbKhcZuN Content-Type: text/plain; charset="utf-8" The combination of PREEMPT_RCU=3Dn and (PREEMPT_AUTO=3Dy, preempt=3Dfull) works at cross purposes: the RCU read side critical sections disable preemption, while preempt=3Dfull schedules eagerly to minimize latency. Warn if the user is switching to full preemption with PREEMPT_RCU=3Dn. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Suggested-by: Paul E. McKenney Link: https://lore.kernel.org/lkml/842f589e-5ea3-4c2b-9376-d718c14fabf5@pau= lmck-laptop/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index d7804e29182d..df8e333f2d8b 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8943,6 +8943,10 @@ static void __sched_dynamic_update(int mode) break; =20 case preempt_dynamic_full: + if (!IS_ENABLED(CONFIG_PREEMPT_RCU)) + pr_warn("%s: preempt=3Dfull is not recommended with CONFIG_PREEMPT_RCU= =3Dn", + PREEMPT_MODE); + preempt_dynamic_mode =3D preempt_dynamic_undefined; break; } --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 1B476482F6 for ; Tue, 28 May 2024 00:36:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856600; cv=fail; b=cpy3abNmru7ORZ41d/BwZQ5FFd8Sg1Y4k5O5QECy+A4hL8wzxzu9f8HuChYSDILNU1cY+X1DLxhVcFsPzesmDf8YbLPDRzp/QtHk72eCotinIdJ7xOqGU1WzVAO0mcZtSgxaoj2sOaMyduxYIZVS7o6bwHSvL9VLgcECpZZ+kEU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856600; c=relaxed/simple; bh=yqdt4hIJs1uXQkYnvLy5ypMNTqD0hp2ov1BD/aET6QM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=V+QU5lf+SdRJsVu9ZhMLrLiySlgdRxqPWTHrwB7/Dzasp3e7gZhVdGjs46X5iicGJW2cv3ZuIVFsxJRlaxpCqhv9IMGEp7d7+voWrq7TcWVRAXcK226xVZOIsZcpyqMBXtnNyLSdIklHkMDr3FKtymkCJQrUDnKTv9xrfejx+e8= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RFZPKn001283; Tue, 28 May 2024 00:36:22 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DN5W3IwXMsgTjnY+/93SRBp8U++X+375qYOBRi0xevkc=3D;_b?= =?UTF-8?Q?=3DCoUUis/9ND+MvmmjqAEsw7a/HeSaWyrYVpfuqXsJLPAR3cCT39YE73xd6IlY?= =?UTF-8?Q?lgh3fUDA_AljmOSH9YyKhkA6/pzG/mkLnuDyrmQNv9L1hcDbeFK9xEIKc2/0KaJ?= =?UTF-8?Q?OXIqdpow6pnQca_4Y4jDLKkD0Rz+j5cR4faPBXfWas4SBWny66uxYIJF86WLUIx?= =?UTF-8?Q?DvlRrNeM3XSwfHIKMw7X_fI3RaFwnMzkCYJnB2n/HCdaGojPvrfOsKet+IF1ETU?= =?UTF-8?Q?xoXBqIUcijAB3jcERPGmqIboje_qyrplYG+Hx4jLFiAw7EGml98KJBHfADn9+Cp?= =?UTF-8?Q?J6cljfVNCPlg+ZQ0v+e5zfw3+T/Jx1gz_Rg=3D=3D_?= Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8p7k5th-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:21 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLp7lF036807; Tue, 28 May 2024 00:36:20 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50w8ckx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:20 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NYV95ubV+W8Wyd4LPf0NsPkArLwgrpjbsnctdahNkbr2jx9pGs4E3vR7wOQszu7gjrsMI007ocGZ6+bfQrNMZza5VcUy9AG9a7IjPbYv2RstkjMbL08LrMvTuQwWtKpsxOWATcO6cxZN4yOKfkDnNtecN13n41VCNtnFlmU2nlFK4Wb5fGV/vgCUU+MQHldlpbf/voHgQxX+po90R+Rre2etqMj7ZH/2/WND+R+v3FN6GYZ2hfKQaqC6ZdTIQAYMR+198mErx5iRDKKo5w7+uy85VguSSt9KoBPYvCtN8HIhYW0Buv6EUROKYqQt+5ikBKqvT8d5WtRW5Jg6ZOO0Ew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=N5W3IwXMsgTjnY+/93SRBp8U++X+375qYOBRi0xevkc=; b=VPrtbZFkMDbd6wdBaxiIOC7jBRZWrHYKjaPzHjW/mNQ6lCv+nGGaGf6+wnhQ7PabAsz0UegOcv3JD0F1kzPb1JKbOsbAf1MRiHRjK6cmoD02Almiof+F5AJF8xK5FCAF0KZ/gaUKBvamaIwgwvsebNJGui1FYz6MstFxRQcatZK8WVf1LA0/zf6rjHSSWoeQReLkNL7YoJIG9uFKB0BZDAsxqEdTiOQAJuFCi7Ho4//aFPsnubgI0XxAIK2Lctfp7nbLHSiVyi0PKIZuuzuDpgmLzeiQiAgWIuYwGFVBTBAhq4fYxRRKkVCmz6xLp4JD+UIqMZay+v4rDf5Ohr51Aw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=N5W3IwXMsgTjnY+/93SRBp8U++X+375qYOBRi0xevkc=; b=NJ+fQPWeIShozskjTbjrHdco6I6aGK3HH8+VlbATIkfi044fwRAlujFiZfyNX/0kJ495Qf/6AU3+ZzopCDuoRbYDDvVQQpy/R9GtA6rZszl7rvu89ruELA93ejM5VQI6eQOCpabCygevNyxApPbmuzQ06wOzt5Ps0AZ6SBMyxEo= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:17 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:17 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 17/35] rcu: handle quiescent states for PREEMPT_RCU=n, PREEMPT_COUNT=y Date: Mon, 27 May 2024 17:35:03 -0700 Message-Id: <20240528003521.979836-18-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0176.namprd04.prod.outlook.com (2603:10b6:303:85::31) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: f04ad2ae-02df-4fd9-1775-08dc7eae2fd0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?+NVvKPqqhUTfkMPwGnrhWjnc4yfPXSdUTlBUnwdL2zkhoYFd3vA0zFyBIZbG?= =?us-ascii?Q?UlFXGooQqIkRT/DKUB4pq4Z5Ld9XjMddjmDwkVq8U9FtuL7nvxFQiMrdmnS9?= =?us-ascii?Q?XMC8kBAT6s5Aw2Srf7JwUj9lVfz0VvFfEVkaOadfFP1VvTHojvCFu2q8udWB?= =?us-ascii?Q?c6o0QawsDq2uF1exibj1l6VDtIZFBKfBCGYgZNGhJkLBHKfwMSNCWFTJPMcp?= =?us-ascii?Q?Ew29sY9Ddq9yjXDhI92eo/VwHYr/9Xjg2RYu3H0n/1d0s0E8o4XyDcE/bfk8?= =?us-ascii?Q?QLCbNIoHL2H2m4lW+aloIvNOomjgixGAoBueSepwKjNYS10i2zTzAcVoTasa?= =?us-ascii?Q?cPKnxCrwdVNtcC4e6ZFPPQaFaPARY/cb6Kvw1nyFZ0yq9Mg5pR0TA/iIuuMB?= =?us-ascii?Q?Jb7UOgWTon0EQYINqNxd6CeL2+8qt1dwoxL2bxApmR8wcVmpVOF3NGqXw5SG?= =?us-ascii?Q?Ko4EXXsHgYWqMK7ZchcSX8fSSbGutPwUvqh9zibuIqJ+GdwOMUYSGsceBbcu?= =?us-ascii?Q?DCRO420pa37X6pAzhLISV6Dcbq3dtanhRVAWWFKzB47MOGIO+V4gFSf/k4gN?= =?us-ascii?Q?SgPbXiTnX+7MofFXzHIdh8Uoh/UMe6iOkHEL48DWEqM8Lobx0x0Ykek1BHFo?= =?us-ascii?Q?6BXyinqKgcgz1Io6RceyZlLsLLQCAI3yBUy3PFDZ1iN5Esff/IVlTkNdbysv?= =?us-ascii?Q?I/A/3pLnFaYuA72Y1nDez4N3HpNZ8c7JWzpidHUQHDxhO6D6o+SFF7Slm+uJ?= =?us-ascii?Q?yIu/P7oKrRIIhxa6QFTY4AkHhZo76TmLEtloNeU4ndAMpZcPber3EI8HrHYI?= =?us-ascii?Q?WXv8HPku2YCwnrehJqlLKUQipFWGEIX1zOb/8UJcLiJx4cC3MoeKX98wTFXE?= =?us-ascii?Q?NxPQWX4fYoUlFiHVT8crfRqpmiUeHNusrTlVmzfXq3xjffuEuR8zu2OIxEZd?= =?us-ascii?Q?/T7emQ1sSy9koJFYKjpRtvZHJT2a+yQ5S5ZqkDbVMg1Siz3LNGquQxaVphU1?= =?us-ascii?Q?IPd6EqdbQcblPuGxtMdbCcpEzgmGVaP+8zkSUyeUlCuqX2m4+bQmapuWl/1v?= =?us-ascii?Q?ULJF+i+oZ3i/c/LH1a0LblLh0sXNmR7ZC6P3xCaxu97turL7dYiB8r+k2neI?= =?us-ascii?Q?bvwKYwcF4J7CXQ3+MJODkfFjppxLZwNuNNQPLz1exz69SjCEl4RTHrIM4t8J?= =?us-ascii?Q?vcB1GtNkPLDxB/9UqwV9e25ZttRJeQqgA0lgvV4Q99QQ2GfKZSAsGEWtbKI5?= =?us-ascii?Q?W5W16g95zjnbm72V7AdWhBtuhtdr3eBCfCsvbpnknA=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6/OOxDYF1k50x0etymIZ9WChbWZSTiOXjx4+Ttya0BwldsmzoqAI5/XO6CfD?= =?us-ascii?Q?Yp93ZrTS7Xyx2Nbov72cFHB2wAnx6DoO/VUZrJl9BA9g//DUBWDO/KGMmcwz?= =?us-ascii?Q?6OfjegbHppO+gHYWuYPJXhfaE+cPI7rm4bEEOozC5yhbPJL0r5U7e4R1JJc/?= =?us-ascii?Q?Lxz1qJoOH34PMe/7NG3fPOkqkl+52fZfKFZk2ZRKo8troK6peWvkPo6WPK3j?= =?us-ascii?Q?r9lIkDpgSlVufnqp/yp5/aYyEUUukF1uprWWCBEeOUfUg21YQMGWe2F2Za8H?= =?us-ascii?Q?qb3AAx4zEBGMu+ah8AbRJFN4b8QfwmNIdxEhD5VrlZCfw1DaQwYqt+cxCobR?= =?us-ascii?Q?AHY1wopgyLIi8C36L5vubi/v4C4k7xJIak1324PS2IjZbGFlmxWDDALbeO9m?= =?us-ascii?Q?nUz5Ld9Wb+cGY57Vga2kpE7Oqs7FnCmditIwzSGLIJ3ZoNPqyUjHDO9zO2uA?= =?us-ascii?Q?6uDN88GErdaI3zbC52hI3mj2sf6p6G9I265dP7vLxox/l8o6osBirudRSRJZ?= =?us-ascii?Q?Hhghs4QSYxu3uOKOz2qvQoZ3WTCIZaNBG0ec3bdF+oXVK5BHSDmZxfg/7QIg?= =?us-ascii?Q?QYsJ28Y/iQ1cM2qtbXKu6lgIQlP26F2fkoluYqcWUlJ5Zu9Az4ma9Tx8UrHT?= =?us-ascii?Q?R5sxXc3XFVrApNNE+/KjFZ7TNGQd13gCXhd4HicqCZTenS11StyJAOla0g+k?= =?us-ascii?Q?UKB2vQA1xqTw2r5CVd+Ie0jWz5vyBYkZSUHPUz6KKsgjNYOzuVvQnaO295a2?= =?us-ascii?Q?EkN1jKBA+qu/2iD87BoZnXPdpCIruOaTqFhlq9Ji7IIFfG8VESKqqYsLu6kL?= =?us-ascii?Q?54oc7v2p2pVnDMTikyfZuWGnYY4fam4/OXG5wXDQzvrcgs9vnyFPhhamuJxb?= =?us-ascii?Q?ADDHrctZVh1rUbiaMDU2PZ53MHLyyLOIt0OWny+f9FTr3kLjDeJYuTSHuKeV?= =?us-ascii?Q?y+5qGVnrs/JV2LTYdiHP5OwzhaNrQo7E+/HAY72zbJ/BDRA7UxX/a9Dd2Y06?= =?us-ascii?Q?l3drNiI9yve6h0W8j36DgsSKxJB5EbtggyLrdSfy51ssOQxF0ieAXrwy6t7d?= =?us-ascii?Q?v2LFQluHeOI7z4gJmg0ke8FCvLwitj9VHPrE/bWm4Z38oPXhZAT7RR3e1zST?= =?us-ascii?Q?C9mFo1mE+tugQbwWyfpjaEzmZhJ0HjGkq0/k8RdIivr0Wy5ZYKDLpG+zMn1x?= =?us-ascii?Q?uO7ElY7Pbv94qSzSdXkPIpzWYvNpH9zIWjqO5txyIiz9JKWWCDiZ2BAshvzm?= =?us-ascii?Q?3pxKlD8GbEuAm6R3K8eeRsAAggw7LLDBgwPVUJib2wvRk1fwOxIn2wLLH0gi?= =?us-ascii?Q?I/R+/VpEQWztaZH2fk2mNimydvIJQctCx2BlmOWrjt6tp7sGQ+lBOXrL/FO8?= =?us-ascii?Q?R7wy9QRHnWS8OcdwrJI1s7RGEvxX4k7leQ/4SKfZpHckR/kmcHInYVkHocme?= =?us-ascii?Q?3B56Haa0CHK9QvjYBvDWx+7/ceA5RyQcEqA9zzZXuflqee2zQSNt1jCK3F6Y?= =?us-ascii?Q?91sOCnVsaLc30sjmtidiBKH07rxSCivNIhHIUModhL1mvbv3nQR0CKcYqYo+?= =?us-ascii?Q?LLkWzdvXs3R2E7AkUIqiFk4ch59vpb0rTK+CSxoeD7VcLGpLKh1qZXixOirF?= =?us-ascii?Q?QA=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: yYFYGt4EBbxa4MqhB7beSW0whX7t9ONS73B6zs2wOrnK3i/p12DPwZUFT/NiT+/8o/jK1NKkJ31HJuc8XKLeLbYqsKJG9cSBGDMwTaBRNPzvSVZYL47Nw6mCUSNUtlSkTswyu2LYOakL7UQJV2VinqqqRFnfRI3FNVYVnbsJ4J+HHMeXBKtuUU6QlZo2e+SCZS4PDjcbruoXSkEsL8JwNV116kVFOyk8UXkfAktbHMu4tWg4CtelzbZUldyUaqWUtrqpqwEehf0mn3tDPYesAPYo+FOPffvw7hPBlqRTeCcdiolIcd2nf+CYRbAh7OXFgtHwXg7dqOaFtlPSg9mDk/sNvfHQ+vUOEi7nwWMTPzK/eg9yM1XH6PxXn3lZyHmYhUCg7+4IaV96LyHQgyPM+JyiPbDCMhr5OlwpN/UiOJOZOzpyMdpbieBDcwVUg4CVOcreGlZILb/DCzx0Gp+EkCv7rO3eB0epH/TDkbo6AD7T58BhNax8FauNNdCeIQrLz0bCblmV75vL4u/4EvoTAhJCgpD+LIQ/eso5wg0L0AA+jkoVHfzteE4lczmPvykSdNeID9B6nw3FmGwi1SAf6I4KmoFmRqnspviQBLzK2J0= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: f04ad2ae-02df-4fd9-1775-08dc7eae2fd0 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:17.2564 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jgaOCnW9z3TM8q1q46BoYKvChmr364jL3VMJFqW9m+oZsutLA+OhLQNbpGt+XZVK+pNQv0RWGloIIPsKFvrlSAh8zKnB0Eum3bgdylCPDp8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 malwarescore=0 spamscore=0 adultscore=0 mlxscore=0 phishscore=0 suspectscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: Kk7od-FzMrHqDLI0kBykHnBNKVZRO618 X-Proofpoint-GUID: Kk7od-FzMrHqDLI0kBykHnBNKVZRO618 Content-Type: text/plain; charset="utf-8" With PREEMPT_RCU=3Dn, cond_resched() provides urgently needed quiescent states for read-side critical sections via rcu_all_qs(). One reason why this was necessary: lacking preempt-count, the tick handler has no way of knowing whether it is executing in a read-side critical section or not. With PREEMPT_AUTO=3Dy, there can be configurations with (PREEMPT_COUNT=3Dy, PREEMPT_RCU=3Dn). This means that cond_resched() is a stub which does not provide for quiescent states via rcu_all_qs(). So, use the availability of preempt_count() to report quiescent states in rcu_flavor_sched_clock_irq(). Suggested-by: Paul E. McKenney Signed-off-by: Ankur Arora --- kernel/rcu/tree_plugin.h | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h index 36a8b5dbf5b5..741476c841a1 100644 --- a/kernel/rcu/tree_plugin.h +++ b/kernel/rcu/tree_plugin.h @@ -963,13 +963,16 @@ static void rcu_preempt_check_blocked_tasks(struct rc= u_node *rnp) */ static void rcu_flavor_sched_clock_irq(int user) { - if (user || rcu_is_cpu_rrupt_from_idle()) { + if (user || rcu_is_cpu_rrupt_from_idle() || + (IS_ENABLED(CONFIG_PREEMPT_COUNT) && + !(preempt_count() & (PREEMPT_MASK | SOFTIRQ_MASK)))) { =20 /* * Get here if this CPU took its interrupt from user - * mode or from the idle loop, and if this is not a - * nested interrupt. In this case, the CPU is in - * a quiescent state, so note it. + * mode, from the idle loop without this being a nested + * interrupt, or while not holding a preempt count. + * In this case, the CPU is in a quiescent state, so note + * it. * * No memory barrier is required here because rcu_qs() * references only CPU-local variables that other CPUs --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 1DD581401C for ; Tue, 28 May 2024 00:36:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856602; cv=fail; b=PkrFYF1eicRGuES/ZpcVx1LaLuFByRgo9vN4wNMqAX1VCMZ9JA6PwIRMQaatQvmtJZiWeBZzHnTilje9flFfOw4iV+Tnk6ifPLRdhzfGoRBFFZ1zJkUvcFPZRiuaRH1DZ/z+iPM7KWTED8ffdWZgeJp986czFci8ht4nxQHliis= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856602; c=relaxed/simple; bh=8EbQMq9yhiRaY69+ZXoiqNPuqCRhLJiJrdoVRn/gOOI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=lCeagUA83nge/5jCh+aCMrN094beOCzKzunf4ti7X0AORdupQfy9LL5kVsoOCLOack84JFQiaARXPBDHihbZLCEyMDziyQa80XQLN0XTz2zF/BndUHYC0TmhNzeZli/6x7A87oMMLZVOLn0RbJpL4PwcVHCQj6moB90uBby1rlU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNkmrN016198; Tue, 28 May 2024 00:36:25 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DkS18Rb4cvEIKXLYYFDsOYcEXh408pOVMRLjbr2O2q8M=3D;_b?= =?UTF-8?Q?=3DNbEabUT/TIyXsXc3TCX7ydeDqxRSJAuF7wzi/Yoqk5+C/3bLfgXn06tlsuNi?= =?UTF-8?Q?u6vwq/e9_xdRaBV4IHXN+wMN5TIjIJ+S+VtKNPfmakGItRkLmpX8Ru7GuXjsAqA?= =?UTF-8?Q?HJ1uUKYNtP4Gw4_wDtONGWnO3vf/YM0Yw0b/dr7rYEqk0wGyAOCwINXj7DX+Um+?= =?UTF-8?Q?7HhSTcMvKyF2AYWyLDQq_LtoLiFvtTWeiScBqImtYqifVotupihk6CYb/UzN4hO?= =?UTF-8?Q?dGHfRnY6GFIk2LyhjZxp7mMgbf_55OD7IKn/vDoQmDdsyklHU1cDrnKdSDbbLRR?= =?UTF-8?Q?nwObCAq5reywA87KnqABc1kQDbjhZ1qd_cw=3D=3D_?= Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8kb37ra-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:25 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKdJ4E037250; Tue, 28 May 2024 00:36:24 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc534rdpv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:24 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YBRCf8g+D6e3tuc0Q/pvfT2s0YFzpL21RiTkvT0DibWh5HVtHJv1Ds7p06T/QvCH+it+JUZp6x0QxN0/VWUyfvWSpi5RebTDorv6oBNw90Aoj+4Yex3ErJN15bywt/5Qs48HeOKoC2I8SubrysDtSVWYS3cNphN22o7VJ5WWeJ625lf9mO48KtMuo7Yt8GKvgfLxpWIayBOoTcIxpS82avrP1ZeH8iWSV4Iq4UITOwgrjvaMYWjfDAKiD0mvnZkfC1cNVKM+FnMSh1MFswLtVLdSHg6JgYAYh5pmQxah5s0pikPAybeSlE4MErCxPLErJfhnbk5MPqfqMtxUGUu3EA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=kS18Rb4cvEIKXLYYFDsOYcEXh408pOVMRLjbr2O2q8M=; b=KQho4wKHAJWJF5fv6tBTs4fP/DOExW3PAmqGm/aM+ZPgdQn7kezFHxPc6YZMae9KsPBLi/+rBhIwUn+CLG5cxCa+5MXxIqZF75JmOqY6wYDHT4AVhV6QovzL/bIzWDBtP+hD218nS8RjKjQ7COGqMl69frACtzdfnrI9ByDrdw2Pl29f4z6Ku6MaObsxCza4yHLzqc7oc3FVWwr9IKbRiYjBRWmNwQKvR6fJvVz8Ai4wdX8nXTncYbflSVMFwT3PQLRC+N6mBJ7s90R0pFgpKJI7GKM45Y0SalJx/qnhO1oSGvsY+J5WyIQ0Sm/tRiZ129IWu8FY/DhH0DugcggyTg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kS18Rb4cvEIKXLYYFDsOYcEXh408pOVMRLjbr2O2q8M=; b=z+1qmmBRkrLIlnZoMscBz8H44W/TtQH49HIvX2nyNX5aFeW/8yhmIqyZNnJTXMUz2yV+WLjYT1XEFB3SyFSRsqKvoBACdoHc/+mhHwinifB7EBFLOEPj1IZm2b410ScVK7d/UbjqkhUPYDG0qD3tY0dhNaSEzKdYemm1Txo2yPI= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:23 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:22 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 18/35] rcu: force context-switch for PREEMPT_RCU=n, PREEMPT_COUNT=y Date: Mon, 27 May 2024 17:35:04 -0700 Message-Id: <20240528003521.979836-19-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P221CA0007.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::12) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: edd9f82c-e770-4e54-8c11-08dc7eae333b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?qeRJZxDF2uNj7nRx7mADTtAmWnvKXIvyRPpw/wZe6h0k3WWxlUr8DT9YC1on?= =?us-ascii?Q?4Ur0yKxVkGLGEd+SiH+LQIVW/GWjGmQk9NuikP1bGcyGF5DJx+3mGYxHvo2f?= =?us-ascii?Q?CozZmVOU9PCyeg0lXsIjK92mEV4Gipqry1n0FBDqJrDN0jzpUZDrSbA3pWyN?= =?us-ascii?Q?Aik14PssR0/js2vJ6y659a9djrqGk9Sbuux1QN+3hr6Ui2RZzlNDbau8rjy4?= =?us-ascii?Q?rBpzfTPq6NALuUhWLyikuUBpoM6r8CEEjEXXhncC49lDQWj3NchAnDuUvL3m?= =?us-ascii?Q?hGENTu+Qr8GQKx6OBlftaOmaP8EZQi09QpGzGoSKZh6G1AG6EfsAFBJydNJ6?= =?us-ascii?Q?UpG4NHEPrveLwr41YghullgMlIjDdYbLIQQKjT8O0HjwbCTer7i1aM3/XB78?= =?us-ascii?Q?G7GVKYeisFlTO5rHPMTBCQzMxDP67yjNEFJNWCM66sSkLJBJOEncIN0lNQpw?= =?us-ascii?Q?4ilQLVZlvjANd+oWaAaWkLaaqzdqLHB8OZuxoYc/ibKMJgFS1/NjrwQtiiBc?= =?us-ascii?Q?ifUajSddStY60KbAGQg0YlNHB65iI7W8V+WIWbr7uI95lda+SLEmn3OKvmro?= =?us-ascii?Q?jbbE8JC+LcU1JSjUV5XDDPtUDqz8b3rUd4RaAeOMPbo7Ulo1v9VVHvuUCqz+?= =?us-ascii?Q?Bj76GUS5GGbH700LLOZaalhXuxz2dS5eHfpxyUQyaCy2GgEtL4nywCiGa7Qa?= =?us-ascii?Q?fjd3qO2sRuZnO5lkrITgyHOd8R0L73gRPD/3xv8yX811u9xHlWmP72+ozTwN?= =?us-ascii?Q?wjP3Xy1pSRCoxV5vRCxBdOwhpFjrk2RTpr/c2uw1CSC6WG0bQw7a7TjF9Ma9?= =?us-ascii?Q?OwJVDTvvIDzXXuvqDoIBYe6b/dnPW1ILTlR+F3dghbOsdRmE0Hv42zrAFKkg?= =?us-ascii?Q?gLu5BfxbCz4OMik2rx6QHl3iZOg2zcwH/TzsVbqN/KZk3Ns5fHYVHE82qFuw?= =?us-ascii?Q?A8ZoM7q2sVqPYxj5MFNCeJ09UHHehYFv6JHM2fPR6B1hrJrmAv7pZytf0jgA?= =?us-ascii?Q?LME8QJ1K6CNBzr8Qg98XgTmmUn9p1EuDl1DmSbFAA+/sdDQVPIoUGJs3fC93?= =?us-ascii?Q?ESQ2zsHHYmFlj3rhKqePoSUECt8jvGqhTy1uEIUN/25fBwkn3xP3x1N/jYAA?= =?us-ascii?Q?XBhHaOwK370weZhY5aa1nBcdXPQsDcf6oOulcnplFA+CfBD+pwZQ8VoVyl9b?= =?us-ascii?Q?ILrhD3UjeCvLpcZG0oFxCS5Cz6KBui0BcYWae+A7iG2540f8dQkZ0IZaQH7t?= =?us-ascii?Q?6Qj8fZZ2+Tmtp8gyb+zccda1aCStQ9x4HLlFUPf/wA=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?KiVuz7KGfvQUoCLbBsB0rfyrJ4n66D8JuYqSbs2+g7tIxpUb8u5AybILOEqo?= =?us-ascii?Q?fDRbNMXswwHHJVb7HMnDXxtyzUrQfazZS95vU6eLG2Kt/Ss7zJ9bAxgUGwnF?= =?us-ascii?Q?wAX0YjqhCOUmG2YRQvUeMyswug6NHdeuvme1CzpDQC2kGzNrXNUn4AqFIH1l?= =?us-ascii?Q?Bje2OXkE+mFq2f/L2KURcZUy4zFugFjdk9SlLdIgffL184GgLgfLsXDae14N?= =?us-ascii?Q?TUQneRdGjf8bfbgFl+k7mU0a0H5PC3LvaCoaDB+zWLqOPREld7hwojXUcSbU?= =?us-ascii?Q?1jMsz3C/ynP8QccvRiJaqf18Oz9+/a3d3CemZO4qveSctW6QpTvhFl8gL7Tm?= =?us-ascii?Q?UmIk2QZNgtFtaospN9zsiEYmI2lvxo8CQv2qFvAHR2CyCoRQELwtdiJ93rrX?= =?us-ascii?Q?Sx/zSEI9eTq+EFXrjVRgaNkoeBA8jAv28pBhqeOyXt+hPdGUegITtqkjCpPw?= =?us-ascii?Q?61tQkqWnsuHyHX/xPJHSwV7YI0eJbEjhfr5Q3BqoTXfZ0i3UN5cq/j5eFsw1?= =?us-ascii?Q?gcBXLhkofRHCF0J6oqE+6AMDYr3aWvZdpkRz448xd3GXxrqY2+fcl9eBgIxO?= =?us-ascii?Q?vGfVZ+U/398ZxqaTzsiiwkZ9TSm8kUI9hZAUQjQkJq+We8Ves6C1pKlEPlZj?= =?us-ascii?Q?VYURCdpUfICy5R/NNpKirIWDUJYnEwN885ZWzA6ZLSjRN8kVpxFPdvm6EMg5?= =?us-ascii?Q?dNmCpYKo3Envrc1GwtnRUeYqt4+6IkKvXqQsjN7DDu3Yo6fKZHAxfeOSoxzr?= =?us-ascii?Q?pvGB1xcEzs2pg3l9FbngwQfm0zW+az5yCIY/mGbYG5XZbO8Kx/aFJ6BOgRDi?= =?us-ascii?Q?30jNOFNCGCrJOgYw9yPy1BkGxBMaEcg6Jv+yY6p1lDl4Y47QdfMCkG/gYg20?= =?us-ascii?Q?MHoe9QihEg12K9NAwL2AkNFjloWMIcikjVOuLmx6RiFgRDnaoMl87zZcmhnV?= =?us-ascii?Q?5UzyPEh9vUvRq1bwMShAWN+T2ErvOCX7EOPpQFQNM1XxEcHbCKqn86feraoj?= =?us-ascii?Q?FOEQdLyKLps8+2+MAZIFDCuWorQv7ZG7bj/o+0bUjIL5l1RH2vtY6xmvyV4K?= =?us-ascii?Q?wUWX6W4+kBV58Zp22uY9eBqMTlETtGkm+snLUCCxBLQvOqwTxoLpgyz445IX?= =?us-ascii?Q?JIj36g2xvuhUBkCRCiuj+cfmXS5cx9EIKyQ6nqwqvcOvUu7t0rU5nQveKKkz?= =?us-ascii?Q?WYu4MAFddhUmp03LoC5H2dvYUaGTdLABO82v3MsJGXJRRM5RqABmzvKu3FtT?= =?us-ascii?Q?Q2b9qdVOTQKenwUsduBJMdnRud343PcJqsb82B+GElYCXLTZI7xZsBU8VgI+?= =?us-ascii?Q?Obm0ptCju0dioAxxVTgrjl50ZOBndcZ38gbTyt7mjBZlJAq97XuPgBQ0wpw+?= =?us-ascii?Q?owkKZXBb7q07mRR4gBtke67HC8HYjOmie7ifuB6fXEFyfRz9E3yR/gO+yy32?= =?us-ascii?Q?cZYWVwvPd76JCwrPMZpEEb1k6mBGWXRHcvHkOw1afLmDk92qOvGd3avKzICX?= =?us-ascii?Q?fKqcQtxiYaiM6cg5ph0Xxg0l7gKpyUsE8L7t+AEQn4JjMEoWrv5QN5DWgFI/?= =?us-ascii?Q?UhCyBXy1OZDjRmLZFFQPuBVLnXsNBtUSjAm+o+LPdZ/p8f8lJ7vmYeeLxp9N?= =?us-ascii?Q?Kw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: We+a8q3ivFvmEwqR3YL2vdVgY3cWdrY5nuppjzYkBH3xhvU9GNsxTCh3effJmzHa5XmTalTeCq/nJoWayZVfElnDEUr0HAqf9Zn2MoGefZiH/wyV55qXRy0etbt1R+nMrGKu5LJJgnArCrkVpRk5PqD+f+CRdtpp0pyx9P4Pb7IzRpMVWHff0aPOnc4YWOVWTJivBOEhKEZrvJeNLubDrllFkXWxwi3q/CQF7TRu7idEk0iBOCbE4Sp8t/9uV2n8V+1kCivp5LkvUusdPYVsCOYxwl8NbAOBEqilUaSIpADKpMoe7jQ2X0fRd0hYgOt+q65nIdHr62AUoMrML19zmTJK5LzNMwTWThOubFGCmiOKsEIjHL5k0sGsqaZpG3v6G7c852gjpWBpxAyeYRkeE6hdavCkqB46q/a8gF/LtzoQTGYE/5NVBFCPi+mcV2q22qXi5cyUa93Ld3zbzrt6psHjL2+7ttCb6OPKQUW1qiFKZMUbOH8AFgYDtSJc2H3yKsVwxgqQs3cMNjAPe2CylHYrVL/kIQ28wzhK+Lt2F/KmMtR2TAVRRwJ3G48DUVdXRS9hYXoz6jq5Uv4vYRLlbOJx+c2n8IcBKRXHmdE40UI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: edd9f82c-e770-4e54-8c11-08dc7eae333b X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:22.9397 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8/GshhxQKvofIIM806fk5D4fg8ABsj2wdBp1mA49EiV5zTDCADI/6dySgIaNsYW2NpAeP6qhMSqOWFlsO+j895ZE8n6B1COnXx2Tr6AwUWU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: OUn2i8iFRic1sbCoL4Wg1V7zMjXTNq-q X-Proofpoint-ORIG-GUID: OUn2i8iFRic1sbCoL4Wg1V7zMjXTNq-q Content-Type: text/plain; charset="utf-8" With (PREEMPT_RCU=3Dn, PREEMPT_COUNT=3Dy), rcu_flavor_sched_clock_irq() registers urgently needed quiescent states when preempt_count() is available and no task or softirq is in a non-preemptible section. This, however, does nothing for long running loops where preemption is only temporarily enabled, since the tick is unlikely to neatly fall in the preemptible() section. Handle that by forcing a context-switch when we require a quiescent state urgently but are holding a preempt_count(). Cc: Paul E. McKenney Signed-off-by: Ankur Arora --- kernel/rcu/tree.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c index d9642dd06c25..3a0e1d0b939c 100644 --- a/kernel/rcu/tree.c +++ b/kernel/rcu/tree.c @@ -2286,8 +2286,17 @@ void rcu_sched_clock_irq(int user) raw_cpu_inc(rcu_data.ticks_this_gp); /* The load-acquire pairs with the store-release setting to true. */ if (smp_load_acquire(this_cpu_ptr(&rcu_data.rcu_urgent_qs))) { - /* Idle and userspace execution already are quiescent states. */ - if (!rcu_is_cpu_rrupt_from_idle() && !user) { + /* + * Idle and userspace execution already are quiescent states. + * If, however, we came here from a nested interrupt in the + * kernel, or if we have PREEMPT_RCU=3Dn but are holding a + * preempt_count() (say, with CONFIG_PREEMPT_AUTO=3Dy), then + * force a context switch. + */ + if ((!rcu_is_cpu_rrupt_from_idle() && !user) || + ((!IS_ENABLED(CONFIG_PREEMPT_RCU) && + IS_ENABLED(CONFIG_PREEMPT_COUNT)) && + (preempt_count() & (PREEMPT_MASK | SOFTIRQ_MASK)))) { set_tsk_need_resched(current); set_preempt_need_resched(); } --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 98A116F08E for ; Tue, 28 May 2024 00:36:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856621; cv=fail; b=S8xhpJ82km2kmlTVk6Y7m8FphscArecBfOn+sX41Yv7XRXxULyc4M5NVkyN7QZkOfjLlc+ad5WpWDqf5jHxz27+Qu3OjS85cz6riGA1d99dMkf9OJ2if2vEQXuEgR4vEgRU52l39xFzULAJ87zSfrRembBdv2pX4GcgcY5l/KSc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856621; c=relaxed/simple; bh=yuS1OSjl1GTXJUfUvNIv3z6frezpTVaZ8v2uU87nkXw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=YPQiE2Q/Ibl7aYelMY+RAL98LkO7pTaefLqkOr4Q5YWpwdrVg8yTqtg6qcR3MeRqFPZ7y0yRB0qK4Xz8GUn919PqG6xca6C9TN6rmsEOeMlgcLXq3PYI+ncGvOmB6KMsZ1GIV7HK1+jGjCCO5xpo6sKpA1azPacLcrb5yg7HmLo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI4vU025167; Tue, 28 May 2024 00:36:33 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D3ePzpSjk362suY20kapEjeWiOOdyFHhQ33nIHlMeCVk=3D;_b?= =?UTF-8?Q?=3DXeU0sJF7haCDrjj/LB8moX4oLt8eoTN4sbNV1fECma+R4hcjl9mTa9jGt3jc?= =?UTF-8?Q?DMCwFZqK_fY3Vxrp9TbUHNEuyb6u4vOMGVqOZug6nWtW0WJPB/+03rDX32uWGfd?= =?UTF-8?Q?8bpft8BI3hGblI_wxL0elbSEJ5HQzdWB7wcZtyvF0t0LEmmkIqIXz/VdLtpZIZ3?= =?UTF-8?Q?31ZCSTvGYxa9P9M8Irp2_gxhYpBWqPgML8k4cXCGzkkIj/CPEZtpWVWsDQFczPR?= =?UTF-8?Q?luvKXXovwyz5zLy9YymUCJaaZP_kXMT+4k/PoEdo3/RLBdkWgY+ME42Ryrl7Rcu?= =?UTF-8?Q?xr+pX+ferBM0j0a9dwR6iwEBNP1ZgB3j_1w=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39ce-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:33 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKf1Rr025740; Tue, 28 May 2024 00:36:32 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7xsy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GTLX1rIxXY3CJa6PdB1asP+pWyQyqz5rQWFG4LTMM7en6yisXa2gCM/BLdTk3iK0kjv9LlyIP8y2YAdua1XuswsQrayK6bEPl2EWleCBJGx5wjDdqhqVf/kz7QlDlptOXqU050wamVUhThut6uPj1Yw/m/h2abQZQ1xS0IpZFO9SKyiaHhOdhhp7srIPz0or5z6DkjIXuzSKQV3IikC5kUgxYTU7UQsfzSGRwhZhkIHwAAUCL60lpg71RkOBjDLi/1h6i5e4LuPd3bWMltBQAxag7UMh6pw1fg0Az/E57DZEzE3GQRC012GGnd9NWuvpJ2Wyg4Py9KSQFoDOXdU79Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=3ePzpSjk362suY20kapEjeWiOOdyFHhQ33nIHlMeCVk=; b=hU/6ir27l+OMFa0ziEIN1/KKJ82Kx+Qa12hnEH7lLqERm3t343k+p6G3d1Tiqww+fuVxEIM+SWbUcFbzdFwJ7GhVCd3H0KlH4fxKFlBUAgM7ARb+jjB0yMMS3ezAVITwuZPI2kEbYQ61I+vMv4iHg1tBuyVBr/SIncasgmItmLxH4h1BDk+84lzAKVHnr9aJT2N/C6PbghN3VeClBWezc7emCjGeam9ZEfFwCr5800o0bj5xsuM6j/t7i0B6iT7q2j+csZM8fntdUwXR7kZRl5yaaE2PdawDhuu6KM8bsxuDTsEEANYaNuI3MssfKckfLduUrmr1dMY/pYGQe82DYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3ePzpSjk362suY20kapEjeWiOOdyFHhQ33nIHlMeCVk=; b=ViZ9xO9W962F1WB2hncq1Psd0QxaYpBFPt3FdismL9iAtwI8vQSmySHfkDUadSqpF7g3qv/75OQ23JX6JCzgyP5QyY8cqOJFNH18O+b/uiF/efhF9ezTe4IsDuDzuIwqni2uc7fAAvZ6/EPBHpdt0pO6PAhOj7PHeJJH0lrYtgY= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:25 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:25 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Borislav Petkov , Dave Hansen Subject: [PATCH v2 19/35] x86/thread_info: define TIF_NEED_RESCHED_LAZY Date: Mon, 27 May 2024 17:35:05 -0700 Message-Id: <20240528003521.979836-20-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0332.namprd04.prod.outlook.com (2603:10b6:303:8a::7) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 9e4ae77c-402e-4da7-9c8a-08dc7eae34aa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?TzNOQYuxlexlM/L7AiXPEf/FJhxHAdmQabl33W5F9EkePufiUdrdXl1rAmZ4?= =?us-ascii?Q?i0C692vKu1kD76dyiLR+qg2/4YSTb9naMQo7b1r+5ZO2yEmdLmjMEmiTDoSz?= =?us-ascii?Q?ff+5ND5G4eR0osZWl3O0Bf2jIXzzWgOmkOKwu8ddSeS3UDh1dDNhtmay8vm3?= =?us-ascii?Q?tiYs5HfMI7rGMKTyBJVaH8Q3JHbYHADJD+9UYOjXWHnvyUBEFCFrl+H1UAZ9?= =?us-ascii?Q?0d4QDo9HRhBnJCXCnAEKS7d57YCwDO3W6V45nvMnJiJCPngqIY6dgcNC8jjp?= =?us-ascii?Q?adXu6AbXu2IqfraiB+cpgF9lPDiazz5KacB57hRhxXp+NSiTPyUI6B6AEk7N?= =?us-ascii?Q?VXB5VoTSGNk29GXXA+ePCqB2r9PUwmz07dwQiqLKa7TmFpWx0vTjXozDfJnv?= =?us-ascii?Q?tT+/et0SMLbBqsQHJGsTM4qa2eNVLdMeLTs6584SgccpIfBJFWuaYpzknfob?= =?us-ascii?Q?7aeAFy+TXgKVp/kfiVUhA2jfIk+Mbz/mHEM9o6nkIqM3LjCt2wTmR4Akrnk3?= =?us-ascii?Q?9gptLsxXoQgmodcSNm44NTJg2SYMMkoIRC9jSxevfTfNaN7pHJC6ZjUYxrIi?= =?us-ascii?Q?7GwtTjQwDWsSR2aF4SEwJSNWkRnqbvTjfoQiczEgqPjQP1BxYsvR+BgoCNaT?= =?us-ascii?Q?bUekBShf4vxMltd93zZlAvbqhWh85HbijjgD5J4So27v25JSA+oVeRE/On0p?= =?us-ascii?Q?QJjG8r7JS07s6orYp/vdvh62XBIvXALOt3NU3/MFbU959fIP7kp+ki9n2L+j?= =?us-ascii?Q?B+KkRzDvElnGVG6GgPssLn9kzT5yzPief5BRdT+f2iGr1znP+b/Urw9Lx67Z?= =?us-ascii?Q?feEplFNqacgT8Ea6HMQ6N09K/g3WQ3hoMpo158izKU8ZVpouIT2iNHiGT/fJ?= =?us-ascii?Q?aRCktLIyANmPJGqc9G/wqhd5GPBvaYxoDuWMwt7r8K4ToAK9ZT+cXAnJrWSM?= =?us-ascii?Q?92FjydsnPnGLnfT9GFzV8IZuMSGvEm4fRj9bW2umUiTdMDAnF8AYd7ozZKmk?= =?us-ascii?Q?whSq6S8POv0prqIe9fygmnTfjADIhA5vjDiIH0GAK9P9MKX0bawdxkwlv2pY?= =?us-ascii?Q?eP8qwwQEL3YAyOnngrOtUln8yjdUfJH/c6A0j3iPWFqTr6R5+BzIVwLRaoD6?= =?us-ascii?Q?mXjekhi1rY23qgAP3BkUCvgkK2AfV7j5HahHfcWmlHPfZ7lWq0tYuBe5HOHt?= =?us-ascii?Q?5yC6fQqSFTgxHQ4+8hrpIvZO9cFANrPFQcG/Bw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3A7YWcTJezE+Jn726fVD0yYmDZAXlxzdMGghiG+cStc0xKY0UrnU1Cs0wZsb?= =?us-ascii?Q?l4nFRJCDY2t0+yOSYccurnhBXp7cTR8Gn0ghd0bO8AFGqk3vAr4FxvszSbtH?= =?us-ascii?Q?WexsVaEKeztQra0OGmuni4PdgekhVwdh9JEurJolhguekeatLvCGcEPH0Lr3?= =?us-ascii?Q?b2/gYfhJCvpjXTDkmq8WChjiNXLM61/cZwL4V3W5b1LX9xG8R3ro89cylshe?= =?us-ascii?Q?Z/EXQv8ViHZf8T1mW8MvGFUIc49F2hxo3OKMj7wXFBgSxq3CMqPfmCbIjUha?= =?us-ascii?Q?mwFrVBMUiKwsA0J+8fcw/QgwvJbqoRHFvbprMxPlFEiVOrx5sBgrc11If2OI?= =?us-ascii?Q?TagCIHA6fXUXBU0bkGUyBhMKsvmi0Vx77B5b8ZI1m6csQDCM4JJSOhNdOqjg?= =?us-ascii?Q?FnCJwDBqoDThxvrxOlkx05C8MTDAtP0pmb7UouactBGvUEOO7Ld70g5Cbc5W?= =?us-ascii?Q?1oq+JB/h6Xos7UnbCNeew2u7L+BIoz4dTqnorebhy/ciygfP2Gn7caFFa03z?= =?us-ascii?Q?4IIJPBeupk5OxZiunVzE9iuymzsrc13R3EeC98t1y+QQdspYwSEmeMGHupX9?= =?us-ascii?Q?dz2+rOO4A1q1t4fHeJ+pz3XNBBLN1OVjTQZhKikNT///RvwA8TDx9bYOmsh+?= =?us-ascii?Q?KL91Vq7rpH+HJAlsYGn67HyCMjmAnHU6/AHg/83mN/QJy8Mtu8DWlKaFOv96?= =?us-ascii?Q?ql7Qo5i5xY5nlW99mOfQ8dRbk//RRbASIAnfQHDVWHm560SsBq3tsuQhXwLb?= =?us-ascii?Q?EZmldL7fCEaPs7YGMr22zyJOiJ05sMRVsoNKnq/YtolHbDZqZKJR2tbAHTWb?= =?us-ascii?Q?gacSevknkFVkbkvB7UXSvOkQWI+bRMl7g1EBA7sDRWknlZ3ZGcNm9oUuxwjC?= =?us-ascii?Q?bfi21Dlyg21GM5scz8xcNvuSlcHW15dXjIi9JcWBfioR0Ts0sJLNcvff9WnU?= =?us-ascii?Q?tfh3HZKZbbjiXs4KiYSzllmhGhVvwQKkFMJSDcJP5WL2DQcHsQU12aahWJU3?= =?us-ascii?Q?Ffzek0rk0XIGcEnrweq+YGzFDUuna3xiqxSrIt8tqLkn6BkUJC+5oLjAK5FK?= =?us-ascii?Q?AyWzSeoGaw9Eqb+rPqoqtwWirrZeYEKu8a/TS85DLJMDtKlPGtT41KmsqpQT?= =?us-ascii?Q?Zo+D2sjCnqhGzJjTU3CeD8cVDL57KzSz0eiR9rssj6ynmRyfMiw+XOkbwKij?= =?us-ascii?Q?LAtIRRlNatafbwsnH1XpqYSaUOZxS2lKpfTVrLn7Z13cdzhQdRI3EaWBEBN+?= =?us-ascii?Q?onnwcrUqWj5N1f+J1GcH3YkqJOuVmN6x7SIeT8YDB6RJ/oLYeYTEB2LunmZI?= =?us-ascii?Q?wIJuMFJUAt/bpo7+8wVNW54gdzHWf5BbIO2EW8/B7z7PHsSPJhGtBmPlVrSh?= =?us-ascii?Q?l++p0kVi/V0V2Dq3gMmkKoXYArCjMg3StwbgtVWfxt6zH4+rEfBCc4cZmUY8?= =?us-ascii?Q?eWvreMOY7CSceexr903fiN7L4zbQKr2lgLM9bdsHdbDcy6OH3yPJJZMQsgrH?= =?us-ascii?Q?JQ2V6JiWLQfgnBGWhSIm33dYQejfIh75kuSf0UJqbkaR4ARCYP51FXFCmks5?= =?us-ascii?Q?OhxaJgiyNENHOiDSLKbxmh0IqzBdYXc4K8ky21eOlVYrbjp0bwsJ8ImvRUVJ?= =?us-ascii?Q?3w=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0Kaf7gtqJknFOagc59xV85aCOVEdAx5GUxrSBEW2ZUZZxaYaP2syYnZEEa5GGTdOCEz8deCMTOfAU1kkAIyzjj3cdlAq9UGIGzWe7D3dJROEE2Kj9uoiRixo4KzH37fUuT1RT6+gm4yyaw5jBNim0F2qtwJAZkGc1tB/FLiJyBmDOp3GFK2rGko9pRPjuYRkQKjwJI6W/PiSB3AGwx5hsTOv691nPnwFijPSg6pF2kPxiL6lnIFAq/3Q1bbn9i2jE/OM65ncK17hlngpskYldOcmfTVRqKHAJFFtKc7N1kEv+EBxPxaZNQr00Ecfggx/8q+Utc3TCSBS6dyPdPs/x9746cbApRtonoxHbBxObOiwWwUoiFhLj3ULE7H60fsDloaQqVP7Er/QjviuEbSpn6/jvopImWw5vRoBV0PS9Umj4FGzho7XFMSGLLwDEtJuTG3N1zxaxOEx1opVi7IGHwC4lbwFB869qTaGaxm9HHsTs11FGypyUneEEyh2YiHUUxUGagWv/aD/oi7mH3wRFRYRLqYrYVq6utRBnv2X5DxOowMW+e/EFhTcwIoRQ2kfIXOo1TLtQ9ZsLarnbz2lnd2qV//ipv/QDb5HA4nLh+k= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9e4ae77c-402e-4da7-9c8a-08dc7eae34aa X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:25.3805 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 98meQNBRclPEnlvnzA6359Ix8lGoPir2YJAwgfFD6kmENEG/EOSEJ7TWK3rQbn/Knd94cgd3nSwsTM91coo8sF+vSG1s3XEDHpQP2Mq/PmE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=963 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: K61TMizPoC3S0Ti_SYsMJsUB7gsJHRV4 X-Proofpoint-ORIG-GUID: K61TMizPoC3S0Ti_SYsMJsUB7gsJHRV4 Content-Type: text/plain; charset="utf-8" Define TIF_NEED_RESCHED_LAZY which, with TIF_NEED_RESCHED provides the scheduler with two kinds of rescheduling intent: TIF_NEED_RESCHED, for the usual rescheduling at the next safe preemption point; TIF_NEED_RESCHED_LAZY expressing an intent to reschedule at some time in the future while allowing the current task to run to completion. Cc: Ingo Molnar Cc: Borislav Petkov Cc: Dave Hansen Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- arch/x86/Kconfig | 1 + arch/x86/include/asm/thread_info.h | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 928820e61cb5..5cd83b12f6fd 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -277,6 +277,7 @@ config X86 select HAVE_STATIC_CALL select HAVE_STATIC_CALL_INLINE if HAVE_OBJTOOL select HAVE_PREEMPT_DYNAMIC_CALL + select HAVE_PREEMPT_AUTO select HAVE_RSEQ select HAVE_RUST if X86_64 select HAVE_SYSCALL_TRACEPOINTS diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thre= ad_info.h index 12da7dfd5ef1..6862bbbb98ab 100644 --- a/arch/x86/include/asm/thread_info.h +++ b/arch/x86/include/asm/thread_info.h @@ -87,8 +87,9 @@ struct thread_info { #define TIF_NOTIFY_RESUME 1 /* callback before returning to user */ #define TIF_SIGPENDING 2 /* signal pending */ #define TIF_NEED_RESCHED 3 /* rescheduling necessary */ -#define TIF_SINGLESTEP 4 /* reenable singlestep on user return*/ -#define TIF_SSBD 5 /* Speculative store bypass disable */ +#define TIF_NEED_RESCHED_LAZY 4 /* Lazy rescheduling */ +#define TIF_SINGLESTEP 5 /* reenable singlestep on user return*/ +#define TIF_SSBD 6 /* Speculative store bypass disable */ #define TIF_SPEC_IB 9 /* Indirect branch speculation mitigation */ #define TIF_SPEC_L1D_FLUSH 10 /* Flush L1D on mm switches (processes) */ #define TIF_USER_RETURN_NOTIFY 11 /* notify kernel of userspace return */ @@ -110,6 +111,7 @@ struct thread_info { #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) +#define _TIF_NEED_RESCHED_LAZY (1 << TIF_NEED_RESCHED_LAZY) #define _TIF_SINGLESTEP (1 << TIF_SINGLESTEP) #define _TIF_SSBD (1 << TIF_SSBD) #define _TIF_SPEC_IB (1 << TIF_SPEC_IB) --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 C2547535C8 for ; Tue, 28 May 2024 00:36:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856610; cv=fail; b=sleAFo6Ebzy/we1gIkJohnpDZvqU7HasVVfa65KeE4h1DQ3vGiImv6wOHzmLCT+YPmW7dLTnqNsx7fJ/alX69UaqIdl2ATPyReBk940tyOC55Kl0/azxdxzDpdYCurbD32u+CZQVRPxYrS34NzXttndFnhIX7RR96SeL/F3ruow= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856610; c=relaxed/simple; bh=pFFEtNF29QjVSmV3juAnLq8xxpb3ZcqB3rksPbjPdSQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=t1vFUtOj1is+X5inGT59rqb1CwNbiukq4pkKjRryK9uv1F2u2LSWK5KVLB2CCiuRiFNkGwdWeIt6DEYGKW+iQ5la++gYkhh8CssTcMA39pPtRREAHiKtNNvBrVwmrL6YA+JNHIFGF21Pj93Oy7P4vtxQ9zY/I5pVB1//6jZhk0U= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDJ0dx009949; Tue, 28 May 2024 00:36:34 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DKZQI1pM8qBdXbTW5LTlM/+np2rpT/vwfpcvHevKNdnI=3D;_b?= =?UTF-8?Q?=3DXHJrh8wO3nSfaY8aNdRHp2p3ZpF9toCKo2n6eRohWG16+yKSCYWrycLfU8pc?= =?UTF-8?Q?GjQZ0yEU_snoNOdNuYPBSwSKyzcB+sTtmL0UaSxTl4X4RkoSVqWzIHcXbjzXalb?= =?UTF-8?Q?YqeZkfzJZxFbXi_m+AzkXX3S5MCuf+2WoVKo1+9zCwJqINgyDE7lCCvjo5elIKL?= =?UTF-8?Q?hvWRE1SrQXDRPIkujT8N_/L4pU5ZrjCWPqrZN7/cYIZbqJUV77S4sfjOFVze0Hg?= =?UTF-8?Q?Mqf1Uk+hLcR75WF+pFGQJLHvvF_wKBwRf3B4v4xI0GIoAcfixxF5Y1YPXbGGDaE?= =?UTF-8?Q?wfTIZHt0oN1cM4ULKt0zb9ehYFhxx3uz_ow=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g439ke-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:33 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKf1Rt025740; Tue, 28 May 2024 00:36:33 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7xsy-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d0FeXPeXkCOHMHJ4Z91BM8nCQogucZLal3SVpCNPts8xlcbBsfq8vrX0dThym38nYAKEdhb5k9WP48ZtLmzYNiOuwwwEC5SSe5ywn1Jg5lWFzYM2LM36mz0J4rsme2oZIZOh/V+wvESaHiTdugQmicF0iR/s2sMqYgxWoMSX7cTJI4l0FPuHC1bvZ4e6AZefk6vm/3dmCxCd8FWvTOrJIb2x8xUtv4y6Ah2CKLZExxkTxrQT7MZi0jv393rCGOY1z5NrZcASCzwBaCbbznUuOrMJ0rSwoqW01rjB2QOrVwGtoUdaKhTn57Itfa6PoO7OX4mlC7w5AKOUwNF89HMWbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KZQI1pM8qBdXbTW5LTlM/+np2rpT/vwfpcvHevKNdnI=; b=bBmgEuCKPcoFVeDGUxMoTjJANU+MqN8G1LZyXDLQpPZtmiQ8GD2h3amhTsl84NshOL5SIXt0aFLDkhONZqsOzOW4d53Si8F1CvyG2QPNCjd5OrwnxuYvkGWnErwdf6pqtOlL9ddkFrkLir4lGgaBJ/1w0sxwLO5pWdOZJDVl2PUVPFc/9qSGrsneaAR+qiGKAGV4ihwUpvJZj8z2KZGiEx6DhHeoIyqO1LujZjxQggOTyza2DgQ72p1XnjVaNj0i6AWtUvFXgnwaEKm4WsWqRhntLdsJJNw91BM/dolLyxazeiLObuVkZN0+qBTJpqlCLD2skmN3kfbhGVykjVKXFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KZQI1pM8qBdXbTW5LTlM/+np2rpT/vwfpcvHevKNdnI=; b=buvxr1ghNiVE/2nFmmBB3u6O65fBO+B+Fj+voz4fNCQ7wbpHUjwbqLX1K0OslqIk4ANJ4By+PUsJPP5xsllg2gvTvMoYdNfa5JRD4TAzW4zeR5U8lqjVINxOWjaOeWMBDOQw1wKV9UNtY2b/7drBm8bmS2Rx5Sd4mnxE0GYJCNQ= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:26 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:26 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora Subject: [PATCH v2 20/35] powerpc: add support for PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:06 -0700 Message-Id: <20240528003521.979836-21-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P220CA0029.NAMP220.PROD.OUTLOOK.COM (2603:10b6:303:115::34) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: fab33e33-70ab-499f-ca80-08dc7eae357d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HiVi0u8uxGsmPHpEpNAOZBl6M5GwAT7kKNlGDUO1UTH0Q0o9GfosoxYflnJe?= =?us-ascii?Q?ZjTPKfAqlDO35GrZuhPs7Nf3BHUna6RISlW/09p6GGZ5vkksQ7U58rvzaagr?= =?us-ascii?Q?n/Qk0vRYEnHKqGE72t2EhQZWims+/d5NgKqLSQ0+VpE4ARDZlUoASxv/HpoY?= =?us-ascii?Q?q12IWxOGTPdLUslBnhWy4nBZcn5yjT36hGJdradFvx+b0GU/1LufYQgEgJyj?= =?us-ascii?Q?1kFYpHTfIE4Y+yUpBnSxgAGH2CW8lxovYHMt6xEwiNX8ylJ3ik08etgp1Iud?= =?us-ascii?Q?dMPbiPgOdFhXVxtpFD9DPltEQeugLY4ulYJJyBGZ2rmXuyjE48C7Yd92frAD?= =?us-ascii?Q?0cDu9mJcJtB11nZY3oYrXIVNpHtaXsd3XVGpQOnUZ9FXok+0jpVyF0y8pGsv?= =?us-ascii?Q?2Eo9NF21mFYEjBTing5+/pY2QTmdvPI48+07MMoQOt8nMFTrbscMRAFEp2zU?= =?us-ascii?Q?J0N21tW8IjPpDg9cBvYd9eDNI+aEgUZGHCtc09GR9Epy5a1l5bwM7hXHjrCH?= =?us-ascii?Q?gmAfxeqTpFh3/KepNsAPayi/Sp5cgTp6K38vEUDTTMAqvPUIEfRczWkhJgjb?= =?us-ascii?Q?L3YSy38/ONefZS6lnk8kn3L0vBRS1ksplMsGOo7kRGHLLAUr/MWdMG3FZRzD?= =?us-ascii?Q?s0M9lybrrLkK8gKwXkrisgZv4C/PGxq2jqb3ICZmYXWMF++2rc5vKrJ1Wl/A?= =?us-ascii?Q?Rp9z2LGmlAocEppvrv/GSibm5odQpWkjQ3w9mX64fZILN8WHxdjO88OXcYax?= =?us-ascii?Q?IWh3nrSUAYKN2TmC+rs5A9w8Vk4tezt6luIJmvVsDz/rE/HxFqw+rAWkd6oE?= =?us-ascii?Q?F9GOloQ83N7Di6mQFecj+USBFBfRYRE0qE7a553d5TCGVnKsczv6bywkbtna?= =?us-ascii?Q?MELPsP7540os6ky944oE9+rAKZ2D4bgbMy7+fyWc0lurQvncGqiTWdlAJ1SR?= =?us-ascii?Q?Y65lovV9SLZigEJcLqPtMfJ6/SmSXDEdS2AYH/fujTF1CByjHU23vUvcz5KS?= =?us-ascii?Q?OHtIezdpewfJzRUX+N2fgl2E8jv+/NFNXah6Nwbdk8wQsO+8Ru4pB86PZKwf?= =?us-ascii?Q?2glrp8KudcZC9OPwALWJUgqYexl6vla5EIPza/+BszMd44loqEvP8rpUmL+g?= =?us-ascii?Q?eggRFL7xax0mhN7ksJ+N+pgYLIy7kLNND36dOsM87JDzpuQPyEhFke+GnPnY?= =?us-ascii?Q?NQ+QAH5xso4p8R2PIimG985Nb7fOtqDHt9X6zTBLTWa7R69ND5/yuwPPFxYF?= =?us-ascii?Q?OLGnKtKMf5/l0tjAp/1nCTM1zv+48f3VMnMdvqSdIw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?tDn/Ra+yDCPOeTn4CbwB73pyamj3QMo1kMAzLSxCPGZEG8f114DwjX3WvYla?= =?us-ascii?Q?2HoNbm65yvwXul2deKVB8J171RkLrmF4E8KGRQ9WKuXQGDG/CXF47HTd4PoP?= =?us-ascii?Q?meUxEISCrWcjgtbexhwB9TML41aeoLL7cBDPOrXYxU7bTQsDdRZvyR8Tvxc3?= =?us-ascii?Q?+lsTrwBOea3s9Uetr4T9+rsUrfDND4rb6i87M5FIzSU0oHWeJCbHDpk9lxTq?= =?us-ascii?Q?ML/weuvcBgL29TAyA02BEuNB0teK32kei8IjvH2Mu5QRHaNqxxqo8DOdeejm?= =?us-ascii?Q?ft1V8+WcAw83f+TWaqP9luJWPMM/kegudJVqNKs7J/D+8lzcdgnVDlQH8zKB?= =?us-ascii?Q?gkTHUucGLuUK+KUbvbx+ZhSsc3Q8gPxNNfIr4d5BGQtz5lqleOUIB2gzNLS5?= =?us-ascii?Q?GiRecHMQCePg/0v3A1Ww1D7kBaNfpFjWfVZDiM1pXRW6RroV4aHTkCQpqedt?= =?us-ascii?Q?0/KXVOL2XMTfCm2nJ3BzNKp1Iy3J/riMXniPY4QTAuIgGnggwUFW+Gt+PVNT?= =?us-ascii?Q?Rt4Do0csS9zFE6JIExQYabe1Blj4ViS0Mk1zNGnY+ZyDM1E5gUH776ijttIy?= =?us-ascii?Q?8O7fXI6z7/zZOWHIdjzBUFzzKPm0AjFTcYZGwYhC/xkR+3F+lXw9uxHDrmv4?= =?us-ascii?Q?BH3hxQ+pwzHMkxMGcth5Cl2D/DXsUKXKPkeLTuCKVdq0SVdV3RV4ZZx2EMvX?= =?us-ascii?Q?I42cP2OH2TUsKhTe/39rORF12Dr0+8gG+dVs+c0bEQtQGftN18z4X4epVHoN?= =?us-ascii?Q?E7Y0rJ8VIKkiwRzytl474UpRtl/3s5WKywZ1Ie17W9X9E4VNf+FljDUbvvK3?= =?us-ascii?Q?LKLIZHdcbJNVnNzlzuqGdtr8GoNHdbqv/2QCemwxClIsQRuFjy7mDITPyCm0?= =?us-ascii?Q?gWYrUd920fcwHUEWhEyX6QqTyWSBMEPr6TYcV2X+E3uCpXAcBIGUFljQb9CU?= =?us-ascii?Q?m1edpCE92P4hY0HVJhUQhDrtYJWDJw76nWEufEfZfwGsxTntZWVZFANdtiDt?= =?us-ascii?Q?iSaeA1yPV+UqwZ21y+LnqujtvCJdaNl6hmGgPx8c5SaQHXgvJlU6M/+JLNDg?= =?us-ascii?Q?wQ1ZE4N0/f4RDIAUG+GW81pGLNfYI6plJBi3pWQd6Uu8GV/gNaDj577IuPba?= =?us-ascii?Q?48K9n5lwuqT6bVo8GAZXVxb6+r4KkJVQa/NopB9xNemEsaBOvbTtJ/3JxPND?= =?us-ascii?Q?FeGv3Il2xzmMlj4bHWaDDd4aUrA5U+0x+pZQUKPNa8M57gSBbK5r3VOq2kF+?= =?us-ascii?Q?xjp0e9iFXeiAC4KpzCgC0uJaqfeRDEQH3jPs7GrIOOQWF/SPbK3yPbiiUm7J?= =?us-ascii?Q?bVor8vmlzPHiDxIm1zFIPI5vPAFOIcULbhhdlpRJrtz9h+0iREL4PWik95RO?= =?us-ascii?Q?7FuPbrGPYnDXniMPg1POw2Synd2sAD5rMmPImzNNkPYhahLs7lmwj5H6TeRW?= =?us-ascii?Q?11WLyY8alQh1FXZKqX/eE7Mh0wFMNjDmf1SsCilKNSRZOwEvmX41IqJh9Y5o?= =?us-ascii?Q?0/QkCrFt12yCiFgGxiSByCZ/UbQ0FBIDVC+ga7PXg8L9+bhOk1c84yx61IBS?= =?us-ascii?Q?nNGbDzdFO9nhStpUo7hGYkf/BgMY8MhJX3Qe2djSnjfbTvhNfp7wisP8XXl9?= =?us-ascii?Q?qA=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: UcthZTYbaHGU9E3tFu4DIe5SHRO8lNVc+cJHa/e2Is8NQkxtwsEf21l/bW6FKCQho54s878QPxSWy7od49Lzevyen0uIXstmqhl5XLBEAj4UGPcQaodafvabeGqAUJhX/qhw4aUBU+vDCvAOSU0S7diQNIZfoLlTiYQr34TuqIM6lpBMFq/bJms0eGp7iGyeYhrCCXb6qe7Df0AR7cArJUe1rIOxBnb1QGuySl6iQn5pRCU8INDNu3VY44/4zaC1okfiV5RGeGRIi9RFuQVtUKlGAWE6HKKQTmu/t0wWQY3URTc9O0zEqEbdGwgb774pOsFe5NO0PxUDhCwErPRvqy4XPj+WV+q3GokBEDak5Z/fQT72sbF/8qntcS2U2XdjjIrycDKZUai9OkjPAVv2/wNWdVXIbHKFnevsr3F9FQsrktob9LKWkuPDlDnSh7CVH8w18k3khTaNDyCmgGMlzpeMTk+QA9KuOz5WrLG2mMYHgPIokLtd0DLHw6gpXPKlyq9T0HBSTi5S9VNFSrr2iEYbIUMPDUzQqw2ZWTKMt6s6UhqjJX0cJ2CvzUcQsMXz5TLiYBm+N39vsbTzzQ2GyhiBzjk27jCbOiCC4EfKGso= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: fab33e33-70ab-499f-ca80-08dc7eae357d X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:26.7406 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +3RPEY1XP/Viy7AKOJdLVTEDezCmqN4gWiooHxhzSkMQapd557z0dL6zgsVPmVFLqUeWgGFWAXVd1WpV+evfLNhwa+X0e3rS89gFLey8TVg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=791 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: VC4V3R1mLwPgrxbdvPxijdEHMQ4OaAEx X-Proofpoint-ORIG-GUID: VC4V3R1mLwPgrxbdvPxijdEHMQ4OaAEx Content-Type: text/plain; charset="utf-8" From: Shrikanth Hegde Add PowerPC arch support for PREEMPT_AUTO by defining LAZY bits. Since PowerPC doesn't use generic exit to functions, Add NR_LAZY check in exit to user and exit to kernel from interrupt routines. Signed-off-by: Shrikanth Hegde [ Changed TIF_NEED_RESCHED_LAZY to now be defined unconditionally. ] Signed-off-by: Ankur Arora --- arch/powerpc/Kconfig | 1 + arch/powerpc/include/asm/thread_info.h | 5 ++++- arch/powerpc/kernel/interrupt.c | 5 +++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 1c4be3373686..11e7008f5dd3 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -268,6 +268,7 @@ config PPC select HAVE_PERF_EVENTS_NMI if PPC64 select HAVE_PERF_REGS select HAVE_PERF_USER_STACK_DUMP + select HAVE_PREEMPT_AUTO select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_RELIABLE_STACKTRACE select HAVE_RSEQ diff --git a/arch/powerpc/include/asm/thread_info.h b/arch/powerpc/include/= asm/thread_info.h index 15c5691dd218..0d170e2be2b6 100644 --- a/arch/powerpc/include/asm/thread_info.h +++ b/arch/powerpc/include/asm/thread_info.h @@ -117,11 +117,14 @@ void arch_setup_new_exec(void); #endif #define TIF_POLLING_NRFLAG 19 /* true if poll_idle() is polling TIF_NEED_R= ESCHED */ #define TIF_32BIT 20 /* 32 bit binary */ +#define TIF_NEED_RESCHED_LAZY 21 /* Lazy rescheduling */ =20 /* as above, but as bit values */ #define _TIF_SYSCALL_TRACE (1<msr & MSR_EE)); again: - if (IS_ENABLED(CONFIG_PREEMPT)) { + + if (IS_ENABLED(CONFIG_PREEMPTION)) { /* Return to preemptible kernel context */ if (unlikely(read_thread_flags() & _TIF_NEED_RESCHED)) { if (preempt_count() =3D=3D 0) --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 1537B1094E for ; Tue, 28 May 2024 00:36:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856611; cv=fail; b=epC5qTjPjLLCoqjsBA0pdj3eFgqZ8T51ms6/mDAIq7uI6/LZfeDYutBD9NJIhsH9x8+a5Etbvg/pg5RgqOJTXd632lyTjfMn00hfMjDW24+nvy/37mxwZdkhvAQzCG185nLLmv7mLUVtGH1h5fUBc6Jqm+bNgUfBDs2i48Jh2yM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856611; c=relaxed/simple; bh=nj8UT62IgOQvnIa4xbmupB8pW25l4W5Oc/A/zB1XBzc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=largAaCA5kW4VpWC8xFmcVDlcxRkoZDP23dUnixOBsjhF8XqhHSV70xO0YotxfX2gWz+rZLkjOU8co1560MtKP48WvW6rEAekVd6aKmyOBwD8Tsy/5zqCWiEOQrAUr6MKquAnbz2mCtEo7kp306Dka50AOV9kbg2gOwr/6D14lY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44REtIQN013112; Tue, 28 May 2024 00:36:34 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DIHixXRXFyTwkkwfAXk7CsRS3SLlkd7/kYbwlphVhNjQ=3D;_b?= =?UTF-8?Q?=3DEK8f5ZKaQMndqygjD4867Jm0XVDPqlfH7LVSWHx8BXeUeFn0POmEAg8kX3Bv?= =?UTF-8?Q?tdgWx9DO_g/tjFUE3Xu3VjxVzv2vEA71HKgvA3kAXJ1dusdbxYElCF36gy6KOF3?= =?UTF-8?Q?8Y0XyYwzIJ1QPh_ePvtsZMw7OeZg42DJPmOlkp/OpSb24dtbxfAsBJ/na3dG2sI?= =?UTF-8?Q?HkOlb3oBJewcy162Wfau_nzC71v4D1SeC4GpHpiGcY1xZe1m0rAjkh3Iegw8tpk?= =?UTF-8?Q?SF2scgdCc4Y8CgibSu7FQq0IG2_zX3YYLJ3mQzDqMrGHpKZcp3RUWcRhZxb9SzH?= =?UTF-8?Q?ZCN5xZXG4YklxOZ78dIu2xoUrzZzhBEA_0A=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8p7k5tw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:34 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKf1Ru025740; Tue, 28 May 2024 00:36:33 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7xsy-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h6YBMkh9J5b2rjQTG2aKjEjCfNyYVdPTR5U4qB98GBKVVdpyeeNx4snkYN4+NF1DWAsl9QuZlkbyQ4R6VXqU8HX18VhXqqFlDCVa+vYK1suGF6iyMFKwmun0pDNCuVUDmeySBhOM1KetS2ICXJ81zS708ZDJlRiNjvJeFERxqQjA90pSyea/QWtjph88W3xyRPdza2vJhxkQZAh/62KU/n1vHn9g8bczlWGXYorZu+zYcwKIyumgfcVXMpFk3WVbVL0vveDl6AbHhx0reaZI/p70VGLqPo8kPnFZGfLeik1m90TfGLMVt2/RuipETlbyMTlIipUGZa725hWr+cRXOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IHixXRXFyTwkkwfAXk7CsRS3SLlkd7/kYbwlphVhNjQ=; b=RjQHNeFWyHTfPA71IjtI2mYRsbnAKGH+7DwArCEhKl8bkZLSLLCvQjcsYUFl5vAiiGbtTYw1ThHSfESJxYcNkmv92j62I4+gyOOLQGrF9e3TI8aSHoXMcJcL8v7fI0IcRqlFEuwmTQPF6Wy2HX6Op0WW+5U7Gy8OPocxqOXZ4hqclpNdi49dL82yfuIWOKhboxzuFWYCl/ZJF3ouxDHn6VDSaG3kIud/8AHu22YUDtTxw472+GG5OzNyek5zVH7eC4ytatZYYwZAw3kZF147UKi9fUl4s+2aGzfegPjLSG9AjLaCGKx8kaBpe0fI/APou8p7dftsvfPhqRaCXOOlxg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IHixXRXFyTwkkwfAXk7CsRS3SLlkd7/kYbwlphVhNjQ=; b=k73Ie9YvNhLTi6/iicf/fV+aoxmi2PkC8BlfZ8l+TbRHcivclQWEfy4npCJH5qKC8Ae7JxdN199U/orRhk6Wkhxx5xXpF8R5gtP0dTP5bDYI8FIrr79UyDwGzYtDzFKuhfBZ7gMP52Onim881ewyDuozRBu/hlLFsQ6iAfdVceI= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:31 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:31 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 21/35] sched: prepare for lazy rescheduling in resched_curr() Date: Mon, 27 May 2024 17:35:07 -0700 Message-Id: <20240528003521.979836-22-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0300.namprd03.prod.outlook.com (2603:10b6:303:b5::35) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: db001b31-e4d1-4c11-b09d-08dc7eae381b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?xwfafn/NqB5KHse7KA3gQiwGI88H0LAJhSRfvL/arsK/UWw2D/Wa53EKO9cs?= =?us-ascii?Q?n0weXi/+bVFSkfHBLS7+k2nqEiBVcmJs931zw0z3Eun5LO1S37DhWpSbqjob?= =?us-ascii?Q?vZPWGJVJ+pjy4nbV0d2h4HJH1ehHIS0MUlm2xUICHrPhr+ZIk8h+8t1dZWU2?= =?us-ascii?Q?wfpOCfVzhaenYGXtR6j57A32ru2r/KSopEyIDEC8Tqtj94wxGTvu2hzZ7Pz1?= =?us-ascii?Q?XBpShAEkjUja2+ccQzDhQI3v+lVisgjQ8Q/KwkRLUIWbUUIMbY8ZIP6yIl8k?= =?us-ascii?Q?sn0pWDQH4tS9sxl4af0p71k+Ub76mcAAY+S3vI6uMgXcJIZcnkwevMIJ3GgT?= =?us-ascii?Q?xsp2mnKV+bywgaJDd0szv1OyC+hUvpUiDnxUd+3JVDlXbU8dDeOkgO0NrdF0?= =?us-ascii?Q?kIKpO6lZJzPAgn1Hk8/Y9s+lTT6AerjRXgpINOQgLS0UUr1b304MexxdAPbS?= =?us-ascii?Q?d0HC1kskkTked/rmEw+LEOy0PeNEijq7Gcllr+wHNAUjCz0Qj+ZMg/Rz57/v?= =?us-ascii?Q?el2GP5h7g75r2uxb8TEOy7e8fYhtNr/GhuXpA0GEoXX9j8lAhbWvWOhVcIUf?= =?us-ascii?Q?SufL0wVdaxHo99tJi1Czn/G5LCwvlre5UjF6d+Q/ZbQNFpvLXVVSGY6yFg1f?= =?us-ascii?Q?Z3ut4973ccxJ1POkr32KF/12wlWHUKpHIO1xe6xD8gd5h9bx28/R99PqmyUe?= =?us-ascii?Q?KpP4R5M/G7/TJdgRPhJpwYnYz6WkxONcnJSkl8OQg84QDdPDcgAdjMQMYRDx?= =?us-ascii?Q?T/7HjIOgkcJUhFPPRsSWIXSzp3Sp5HLCotpY7tFNKSeNm284e33fXyzZPz08?= =?us-ascii?Q?mdmPSdCgqagw841OtdPUioinQ1XHxA8ZxWHawnIvhcupxrpt3y25s9GlKsRb?= =?us-ascii?Q?KGDidwBur3k9oCXMq6b2g568wfwUikfEn8p4Zp8lqN4GPChKNE3yaJbs1LqU?= =?us-ascii?Q?GPsiOmo2XL5aFAqQmd5Ld2YfH38atCHXNEICk1de+y7Kl2zZCTZCJJCKjC69?= =?us-ascii?Q?C8QHsx84tRSu9i4dDBR9YzwYkZ/4MRFD09Aj+Z/UypV1YCbRMsAfvS48b58w?= =?us-ascii?Q?aNF5ziNtny2PXHTmvMFeA6heGZKgegCK39KMr8r2gS0IwQFM4YZJ94TfU6eS?= =?us-ascii?Q?fkpy0kv5pwz37gL4GvAFI1PhWf72BbcKQGHds8XrNEDXkOtFm58+7tm6ibtq?= =?us-ascii?Q?cXHmw8NpHauMQtJl0Z4a0Cw7H1w69rMlj45SZWAJeRCfIIVnu4wYmcxoRAU?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?G/Mvd5OfU4+WeEMChICK8BFGnZiyfvZf9CrP1lzD7MhAU2jk3EuM2gs72H7t?= =?us-ascii?Q?VInByyGcad7TAdBCwFOtnKxJnxg+dNghRB2Z9lpu5Rw7bw6VoamfOkc+3FU/?= =?us-ascii?Q?cPW7H1ErX/VOLOEIo41dHp6RSVCCxzkoGaX5otgQIq1IwiY3pK/8eAKEZ2Y/?= =?us-ascii?Q?DWFLCt6v44x/jFcvD/J55fNNssqqWB+0p1QBKWi1QbkgiZkqGiEP8+QF/oHx?= =?us-ascii?Q?jSPci+Q40eEUexKbS7A+k4G/xEUbPFe5Q+dnSd9GWm8hwXKpxu21EwPj0mh3?= =?us-ascii?Q?CN3t8VaT9GHXojy+vJVeVOWG6DceoTJNipNlmvErDZwCFMOyYD5GzODOeR0H?= =?us-ascii?Q?hIiiNDHh4ZQY9ZDDpKrtGLnf5L8SBk220UEFVh6VfnBy/oHSzf2luN40EAmB?= =?us-ascii?Q?0Fx8QfASVeq9APB/+Ov7RZDw0rRodw4HDTx1eNnD0KlMWcE/qZNxNm2KFQfR?= =?us-ascii?Q?LcNZ4lOf8vtoPbxv2p10VsvyRMzw/xFRYKwkTd+AjTZI/6OBcxpuTvmOWO3u?= =?us-ascii?Q?gfIYxrRzamuzbbOWzYKd5ydYXONnRQiG4N96BvjL7CZOLL84xYdUi4XfYvNO?= =?us-ascii?Q?rfwa97NHKhB6n+NtD9HoEmDofObhdjuMkAUOaTG1N9w0CcbkHoMs5DsvFhrE?= =?us-ascii?Q?AuI00OHoEB9OKWs3cZp4rnpSw5U0Wn/lNB40eGHcIbTj+jcIfbjfjQeSJLLE?= =?us-ascii?Q?c41msq1KORom04r8hePL3LofNl7WUqgD3vTwalwMMSj++c83vG043iJ0d/Nr?= =?us-ascii?Q?lIixrXIYx3nAZFSc40i2jsDHF+U5taJyFvJDxIKN5oJ8AH7hR6jKQ67fSJCh?= =?us-ascii?Q?FtX6TAm2HDyjqwhUOh/aSH8LjH+5eDacEiRMCG6UyfzTt08ojIQZnZALlzNS?= =?us-ascii?Q?KFxN0XyAwsWo8fdQS6c+jRkoq4aRdZ3L8d3zTMc+PC/k0oezFKyZ+RK3gSt2?= =?us-ascii?Q?AhK7ori/yUXyvL5n/p3j3mbVJe/e284glqvCJlMjxUZ9taD6TH+uSUC3kx40?= =?us-ascii?Q?wUEp0OAhXWgxO1jtTmxDNRNQFDJXAizPh/tb+x0kcxvLCgc/fajs378SJ5fa?= =?us-ascii?Q?qN1gxXMmHEwczbwOBs94mjcz6DVXMpOy8BH0yWBK2uHsNMMbX1ediXBEilmG?= =?us-ascii?Q?/3PUv6p3JQZ/jByNTAHpMz1SqaJ5R9MO71RgqjXvA9/mYjqDHi0qizOUWhBd?= =?us-ascii?Q?lE3o2kH9MJSXzFqINWSOiov0nFQ9OJeQMC7MoKWuNDBFT/0Bs6IyzowO29za?= =?us-ascii?Q?iGG/wlsdyWCGzy5sTkFSd3xgSUm6y82o4cYfF9SVVpKGR5b5dNG0ndp0pAk0?= =?us-ascii?Q?2cyrUk6tAk3JMtCc2uv6mggKmv5yA7/8mzwoA4gbUE+5bPnxXMyYxefhpQ0r?= =?us-ascii?Q?ED2pBOH0KtJV1RsS9TgkXv9VVXf88yhQdsaKvHf77w4A4XkuASSo66XD04H8?= =?us-ascii?Q?EVYutSF4rBCMxERlpPmTylqfd4aGptsEII3gp+QPiLCmcXzb0tceHXbGnoOX?= =?us-ascii?Q?LmmVX4CL60Ey9O66qnYML1eND0O7RQwaAsV5jYQjSfDy+FX8bSmqJsB57liO?= =?us-ascii?Q?rZ4SwUklXaomxKcXFuuudF78jWanx/h38TnuUpUp2EHX4sIzI316OK+TOC6F?= =?us-ascii?Q?4Q=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: za926BJGhEM03IGQxecWXPWtgs2+LytA4AiijLxlLcy6ZCzp87vYTwwHcM4ehPqTPBvgJmLR+Cs6CcvYJesfCWVMTRjVcZPUgSbqJV/LJ1BsoS11rHmLRbNgU27rcO87hY/kJ6dX2xUtBKKLb17IMDk7TDSopFP9ZZL0bf2S29MublzWISuboFPaOYzWM3SVWaMU/MEMZUmYCkSETeLq34R/zeNOyAiN9AOKimJhek+gd1Czd2Ozgb52HTh0nL807QQZHS+Wt7b4MA+cJ6tFxOxbERPQs9aFN665CCMisEU/cFG/VR8/7ome3I9KX/bJ/wiqJ2/yu5q+v7GvIcVi00dJHMlAg3BOREuEuh3owY8KxsMC6h612vdOOcIDx5OQEJWwlkMF7QRq27eYI7UxSznDTz1Ib4r8hCfXeYxTb3Piuz29QMJsOCqVWW1lfL6NQowr2B563C1AM7uRjT7pB4o4cXk7PYdLLMqEiEaMNgM3IyiQVM2e2i3bxM9JJ4pIneXIXKYs0PveKq+XOIHOddxQlr9hGL0UgrGbkeSAU1faN7BAEKBcD1H1AAx2Ing3qZW5deM5QagFY99KKm8S2HU7HQ+pBuTPclKrFcBJjrA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: db001b31-e4d1-4c11-b09d-08dc7eae381b X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:31.1563 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: i4z5qVetcSWuQjyczfVmB8DCKHaTsZJOxu9f2ZU/fWFlMOQ91FlMdc8wNYDcG0t6PVBfV6RCPVS0WpXGwBRRMFzHadNy3YXI57yiDxNGmu4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: WmDCV3O5eq03Q2rIkM4yb7taqbiTWBkb X-Proofpoint-GUID: WmDCV3O5eq03Q2rIkM4yb7taqbiTWBkb Content-Type: text/plain; charset="utf-8" Handle RESCHED_LAZY in resched_curr(), by registering an intent to reschedule at exit-to-user. Given that the rescheduling is not imminent, skip the preempt folding and the resched IPI. Also, update set_nr_and_not_polling() to handle RESCHED_LAZY. Note that there are no changes to set_nr_if_polling(), since lazy rescheduling is not meaningful for idle. And finally, now that there are two need-resched bits, enforce a priority order while setting them. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index df8e333f2d8b..27b908cc9134 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -899,14 +899,14 @@ static inline void hrtick_rq_init(struct rq *rq) =20 #if defined(CONFIG_SMP) && defined(TIF_POLLING_NRFLAG) /* - * Atomically set TIF_NEED_RESCHED and test for TIF_POLLING_NRFLAG, + * Atomically set TIF_NEED_RESCHED[_LAZY] and test for TIF_POLLING_NRFLAG, * this avoids any races wrt polling state changes and thereby avoids * spurious IPIs. */ -static inline bool set_nr_and_not_polling(struct task_struct *p) +static inline bool set_nr_and_not_polling(struct task_struct *p, resched_t= rs) { struct thread_info *ti =3D task_thread_info(p); - return !(fetch_or(&ti->flags, _TIF_NEED_RESCHED) & _TIF_POLLING_NRFLAG); + return !(fetch_or(&ti->flags, _tif_resched(rs)) & _TIF_POLLING_NRFLAG); } =20 /* @@ -931,9 +931,9 @@ static bool set_nr_if_polling(struct task_struct *p) } =20 #else -static inline bool set_nr_and_not_polling(struct task_struct *p) +static inline bool set_nr_and_not_polling(struct task_struct *p, resched_t= rs) { - __set_tsk_need_resched(p, RESCHED_NOW); + __set_tsk_need_resched(p, rs); return true; } =20 @@ -1041,25 +1041,34 @@ void wake_up_q(struct wake_q_head *head) void resched_curr(struct rq *rq) { struct task_struct *curr =3D rq->curr; + resched_t rs =3D RESCHED_NOW; int cpu; =20 lockdep_assert_rq_held(rq); =20 - if (__test_tsk_need_resched(curr, RESCHED_NOW)) + /* + * TIF_NEED_RESCHED is the higher priority bit, so if it is already + * set, nothing more to be done. + */ + if (__test_tsk_need_resched(curr, RESCHED_NOW) || + (rs =3D=3D RESCHED_LAZY && __test_tsk_need_resched(curr, RESCHED_LAZY= ))) return; =20 cpu =3D cpu_of(rq); =20 if (cpu =3D=3D smp_processor_id()) { - __set_tsk_need_resched(curr, RESCHED_NOW); - set_preempt_need_resched(); + __set_tsk_need_resched(curr, rs); + if (rs =3D=3D RESCHED_NOW) + set_preempt_need_resched(); return; } =20 - if (set_nr_and_not_polling(curr)) - smp_send_reschedule(cpu); - else + if (set_nr_and_not_polling(curr, rs)) { + if (rs =3D=3D RESCHED_NOW) + smp_send_reschedule(cpu); + } else { trace_sched_wake_idle_without_ipi(cpu); + } } =20 void resched_cpu(int cpu) @@ -1154,7 +1163,7 @@ static void wake_up_idle_cpu(int cpu) * and testing of the above solutions didn't appear to report * much benefits. */ - if (set_nr_and_not_polling(rq->idle)) + if (set_nr_and_not_polling(rq->idle, RESCHED_NOW)) smp_send_reschedule(cpu); else trace_sched_wake_idle_without_ipi(cpu); @@ -6704,6 +6713,8 @@ static void __sched notrace __schedule(unsigned int s= ched_mode) } =20 next =3D pick_next_task(rq, prev, &rf); + + /* Clear both TIF_NEED_RESCHED, TIF_NEED_RESCHED_LAZY */ clear_tsk_need_resched(prev); clear_preempt_need_resched(); #ifdef CONFIG_SCHED_DEBUG --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 63AAA1799F for ; Tue, 28 May 2024 00:36:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856612; cv=fail; b=FMGM9RDwJwKIOu9E/kDpWQp0pDKSu0zkVdGWqTRxGgDbafygIFZXWcfnQdPm504ClXzfY1AiNbpF78dUNIz1XOvWyfqEzFemxilpm//T5btaN5f/HikPCPlUVkjTeduleTUV9KYE6KWi0urRCHdlAg4hKEs2CP3OM6TmqqU5ze0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856612; c=relaxed/simple; bh=iFKpZee1fiih3DocQaepBzxzBArRPMaL7R0VbWvCqfQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=XbKdse7mUWAYMSzUZWTbDkyOwatBFAWB16sUGAiv2Gdm/HOJ/1ebUqRXZppTHt6ASg8hYBmkSVDKZMTsut2Fk0AEbhuuIumVCuQVRFNTN/agkwRhmtRgVPRZKizxkC34g9GGKHTp9gLvRQa7FbRtuBG8JuAhCJjttu+CUeEQ0e0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RGYJfv025274; Tue, 28 May 2024 00:36:36 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DMJ63BXRqcRI5/Zucr20VFUaB4J75kGKHLO/sXoQkibU=3D;_b?= =?UTF-8?Q?=3DQodZoF4RICOTovBa94ZGR2+FkiJGbWczNGp9S9qCXmYiblhY5fRmSUI2KLaA?= =?UTF-8?Q?UMBwzAzO_Kp/45t1T2+GTfCq5SFnvvtMahpZTYu8f58zgBZinynTIbroZQ4T6Jp?= =?UTF-8?Q?nOo0ZZUoOn2Pss_iGmL/H4oZeyPgUfAXDZEwlD2jP02GwasKihSpTO37T+/6XRL?= =?UTF-8?Q?VBC1kwS/jIOqHUs4bKP+_KHC1Kb5+2nLYwPk9wm6wxnDGC2NHjb02JJgN6gmyxW?= =?UTF-8?Q?pquyZiVWMsS/Wb+7Sd+remCwhk_4YeBE3oRbv9M8CSSj9vZKSKctnrBspk9g/0V?= =?UTF-8?Q?b0wxaBCHR1Qz/c/6d+Sn8nafEjg6Ts00_1A=3D=3D_?= Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hu39ec-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:36 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKcSXD037625; Tue, 28 May 2024 00:36:35 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2169.outbound.protection.outlook.com [104.47.55.169]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc5057yax-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e+4q6nWOkK9csQAUtztZheRKIb3myGopFlGwOuzUNMUNkfwYEuVwArYx6Q/KidgzB9s23USBUx1WuuuxzMNXpT+k/NWNmY9cEsQr6OEwlcH9huKQiLxhGFZaNjTrk9cYIoNQo2ixfSO/cBqzYYpdqrIaQu2NRAJT7HYAldjvvseb2v2jhD6dV0bhZRchfvWHq1dj5n1/n/AW5mYk/1Wla8wyK4wLm751hwDT5bz8U+IdzmDydHNop0mn3V0tCx7dmg7dFQVhdCB7KuNkvd4snbE+01Vv7timM7Eu1mclsFd1Vgp9wPtYjezZgbmErDXusnTmsIhqR+jayvULXTJvPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=MJ63BXRqcRI5/Zucr20VFUaB4J75kGKHLO/sXoQkibU=; b=Yj/R6wJ8PmdErC9TwPG6FFiiTQ02SOdYOrxGM/FnBnHxyaCs3RP4svUzvFHlQ36VffgFiGskcBO0CjtM9xP0u6WpgqIxKb5qRLWJU2F2qoWmOapcng6ok2Qemgr+bxQsR1Gg682UWPUQO27pcg0vXsCxU104zGeoUxcrADJsHfXG9MaASm5VT18CdPPY4RIdrx0wvu9y+XuP1ZjjXkCLAuloHuoSnODd7E5RmahhBqk1RicjpLBsHVus/OwYlYm6xKY/kfk4jIy+wytm+vthMO2hnBX7IuPJtsp9Zy10y7adu5GyuDKii1hKik7ZZ3xWzwN6kzXpRu5XnFEwcRziwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MJ63BXRqcRI5/Zucr20VFUaB4J75kGKHLO/sXoQkibU=; b=NKeXn0J08HW0TLXsPLhIto8+mR0/P//OK4ruQxyH6dSGGIVp8akCC+m6sMqGK5HoFgKfHx3xZfZAKlDL1o7lhxS4M/YT/ilTZXiOdjTbCNuobwkKpct5+nssrndjPNx9yFzav6nrloj+ae0YPWOQIiDFrjrrM/zeR/oxru8Pg2s= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:32 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:32 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 22/35] sched: default preemption policy for PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:08 -0700 Message-Id: <20240528003521.979836-23-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0280.namprd03.prod.outlook.com (2603:10b6:303:b5::15) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 7342a89a-a794-4ea0-bbb4-08dc7eae38db X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?f22SkDEo4jyH+UkE9QoZ1E0BJg7y73NkIQBwm3ZOIh7yyeXiP6kVSiWIsLYd?= =?us-ascii?Q?opH1Nthy3VmVEueOG+bzVsS6UT5rrWi5oMpVNtfeoi38h5jUD1irW1IyTcEG?= =?us-ascii?Q?NKHG2lZB001JqyT0EQuXnSfuQg/6U36qu3DrqHJPC9JHThFaALLWvajHWiaK?= =?us-ascii?Q?8SB2xZv6q3QpWAUWN2iOOA99ETjA8vuDGA+YTKadl3DYsQ1DmnRc7w+sQXGX?= =?us-ascii?Q?Kdhu+ZRw1x5ZtxQWJFtll0fG7ZonwWQCW50nyau1fuSpDI4VjLBz+96KgEio?= =?us-ascii?Q?sIFi83BvQjPQ4CwvLOZhW3dujBsOWtRTPE958KLi+h+JuxNH+1AmK9E2L4AE?= =?us-ascii?Q?E/moZ/BwQiXOgmPed5zbUod0m82dSfBSXxgJx64AIKWKV0GpFzOkPtlALmJ4?= =?us-ascii?Q?pn5xan5UdIF0fM2tzEDPWfquDdPNtQpvnDtNuYFU7eO/xUqGe/imRgpSWfsm?= =?us-ascii?Q?4M0q+NEUg7HOkRpJ7Ziflb/IYoEjfRpy0e6lqzBxHGgrcmhE2EcHiWsadfYi?= =?us-ascii?Q?5yECjChPSWuWdK6KGwdtQHq+QZu5awBqyBflNt8qmyukkBRLTLOYOWODbyh/?= =?us-ascii?Q?tbIuMckobXnAHOcjC5jbQIiIjLZMpewDOXYMDWrvluE7VvKdM04nLrt3uG8h?= =?us-ascii?Q?/SmlDAdWw5Sof7eB9HrMrLLDM0DHm4xVGevkqZOzTVdCmmJTHHLBGifPmFEa?= =?us-ascii?Q?coTXl5xpthxud5QGTlYOQQkDSTJf3gVQq5znj64nvb+ip4Ef4deAKlUPaPFa?= =?us-ascii?Q?ohhdvz50A7AJlo9LW6F+F4UAZlYw1+io+iNVZRQtUVLDqMDT6NUV1acPCObZ?= =?us-ascii?Q?pI2GAc/g9wtZQzKpzpcv9WDHoO9k4SebDhnU1lM4XGQ7JoHJL/dXkJYWQjI1?= =?us-ascii?Q?GmmqOWXPiQTrGS05IGXMPUrNMZbKkZ1jrzkyPO/49Fai0eCGJojc2bdxg2oR?= =?us-ascii?Q?jTKNXad0HzGUd8Ys5wLMg00+fnwoJMMFO9pLmLVrWN077o7o3NKc9XGYcl5k?= =?us-ascii?Q?hsqD7oH6suGgOVXGmYoKYwmHkcoLZveqpq8Vmdc4fc525rQ9xQHrsWmF2/R4?= =?us-ascii?Q?iNrSdn7LbXNi8e4NZ+egjKn2RaGeHUsB2DSu9nmEI2IIMBZBzQ3BdlcmU2G/?= =?us-ascii?Q?CKXibc5Am4IMg8jVET5MovZhZyjf0QmyjcRAmuOH/PIP/Y9okEaERLf/fASi?= =?us-ascii?Q?0imgT6QL7ul9jK986fEk4jIM+IIrOrBH8EfSMbrvkUl8ZblXsfCO5Mv4oZc?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iTOTyFtD3XGGTGxqxZ48DNec72l+Jac/ffwy6e56xVwOlvO2y1STGBaZ3Jsx?= =?us-ascii?Q?ksr9ms3WwfgGrUw9M38YSMWRErPmZdkWMtv9R1v0M0lY1P6odC9hkmN6F8i2?= =?us-ascii?Q?59urlQ35ViglhVicD7zcgXaBb+yuNvmbKid+oOLmOJ0CNrBzgQrszYX04VML?= =?us-ascii?Q?j/x++s8e8ewt+yXBJ/wNCksWMe5RGTGvnXD28sWKrou9C6Nc8OgBYra4AZ0G?= =?us-ascii?Q?q5ZZqOfsyTcze7qATCzeLbBPDfFbTVJTibRjr5PNH7H1yUivEkrfV8bXlGni?= =?us-ascii?Q?CYYxSd9S4Qh2iqqaII1Fn00qYUbRU3033PwK86YFxEHSINGsxD+fuyvzyic3?= =?us-ascii?Q?nUEntSTleK0B6DZ9UXaC/+pt/ChtIQusa/Wm/JKhfeJy7XH5b2nO7FWJrguN?= =?us-ascii?Q?C0cH3gbbKRCOVI+t/VcxAIjkRTFL4rVgRk3Ts0GEv3NqvUspth5s5SA6c8Lb?= =?us-ascii?Q?DouggWEf+RfsDm1ZiXjy0ikvXkTeUfLkOIw7VbiZeLq1heAmzWAayJTka3hy?= =?us-ascii?Q?7LHjsYqSjWExbCe2PooPQ82Jiv0ozptcvqDXrPH2JOw2+MH+T7vvALDtETA+?= =?us-ascii?Q?jyHB36/OHgd9xyE2SSH1i5ddtipGBDx3UJ0AG+B8bLMUCkCXzTlboxki7qLb?= =?us-ascii?Q?A8MKCHdWvs2KpWL/C0Wo5oQwMwciuupSn88xlH73FCVPNvd3PjIrx+lbTg9W?= =?us-ascii?Q?CizKwb0R73O2KNDyyEzD83xzCU/Vbol+3jWod/WVZ2O8NgrTrDJkYYqPabpE?= =?us-ascii?Q?ppF2tGmff7njXBLC0OD+Cn9xhoY7r9K9gkhGx2bqf9qy7S3hr1w/SncnBgj5?= =?us-ascii?Q?DUmOtKVOaC9IdFS/l42lHWGarXBIkNSqGGSqfREYWwvr9KUo0yuhGJGlDDFd?= =?us-ascii?Q?sFNoGWbUJntl4GtmgUVtvYzqQ52xL1ybo0wV0yWXi4ixbF1w1vYpET5sJtYu?= =?us-ascii?Q?SrHPKqjGmwn2Iehvo6TxLwJPbdYklJ+Fx0YAlSARRs8Ao1Qgvc+2DceCk1GG?= =?us-ascii?Q?Ms8PM6FNokEDsPb6E68ts7RaQXMgEVt1hf5S1NI9KYfJie31vOA7Fed3kG5u?= =?us-ascii?Q?m51sywCrAUD8xghCbgUKSd4e3igL7CjWExAOyy2JFfboLwUwpzFuEhBHwtgi?= =?us-ascii?Q?HWHY2CcN18h5xalsIX1UZQPpkzdnmxs2vIuwu+IxiwfmIGJFJbx8jGstDSkL?= =?us-ascii?Q?yLqqAOQibtyK0kjdm0Ii+Y46dHC0nKld4yXML72erR3VTrs9jmkcJhYLy6BH?= =?us-ascii?Q?jvGLkwRmRO9vek5mF4BoyfGqqxmZN4odUxQq+lfmLEfoICIHJhYlqgn8nbPk?= =?us-ascii?Q?wiBKjFMIOmQuiKFBjAxRJ28jhZQwNOya7vdH1DG8TIJ0nUIfpRuFcikijNOh?= =?us-ascii?Q?cXxJ5GgOIQfqroZKKm8ubXSWcfAWyEgUzoIbwOAADZYg47IkmhzFTYygvZnV?= =?us-ascii?Q?Aio6UgyxPrC7xXFaRMwaTu3pZwMuV0kwmI1oCnzNcCPAqjX8YR9gpjO0T5AZ?= =?us-ascii?Q?Gu9Jm+uBOjtNKoavggpriVaYKX8mVg7s4/B073M79X5T1sMrZUoIzVNtQIn1?= =?us-ascii?Q?cL851Of//DepTmnw2bgtze/jNYzO/WnFw6r8wE4bfAIM7miRmpZRNSjuIev6?= =?us-ascii?Q?aQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ly2EM6UM4aAvKArjVJI7OOrl+CFOy0h50muX0v40S9o22Hndv73+1qMThogMAvfqmZIRM+0LzA2b44AhDYCussvHnTQ49U3Sf0GuWiHgIgl52ZQ8Bcs5P8Ab7k5vKOT5HSUcO6scyK4WO2h/DCG2+KN/m8GDTd7a3LuLGRUPHI1sIyc0bVlphKqxtUdCeltGf16XynQ7Ci0dfq9OAxNQszyh69UCciYH0ZxvSSsjA5v22EEw3+j2N4F+ux7KyLrtppRNdNLi6v0s29+8kxa+P0RfAth6W1IABvjljWoytjF0TkN/Nb6TAo7hKoNBM50sJ/t9JMRXizmlkmtJICZkjGkFinwG8wAJrq+9u6qxaohI263YK/GeAFFcWEiHW7B5Q5CDK+bIeqC9fG3X8V3YdipSyPlqICtM0fhwzN5dMTv6gMGrqW2co5Btci+fapd0ZJg+A/BpCLJsAmDZvWeP9q8EzBme/PUBmgEvE2gHdCqbtDF1v6SrKppHdPG/AF/w+LwfoFmzOMBiciip0mOvjDtHn536tXWpsinqDJfKoXsAVvVqM1+l9NFl/qVShf4lozdqmbfn8wXBue3o9F2jYXjhb/cEwUAg/XY81GBc4wM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7342a89a-a794-4ea0-bbb4-08dc7eae38db X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:32.4176 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8BzfPRqL/VK87pC3yKMZ2XewEdeDeznaBfRyeB+/dUQCqI0JsLhWXIyRRpIqDvSu7M9/Ib1lgStAtc31b4eqt0C4UdN5H97fd9pEuizS4qY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: aQqOzeMttLR-9NyMO2nV5STKlGrXKaep X-Proofpoint-GUID: aQqOzeMttLR-9NyMO2nV5STKlGrXKaep Content-Type: text/plain; charset="utf-8" Add resched_opt_translate() which determines the particular need-resched flag based on scheduling policy. Preemption models other than PREEMPT_AUTO: continue to use tif_resched(RESCHED_NOW). PREEMPT_AUTO: use tif_resched(RESCHED_LAZY) to reschedule at the next exit-to-user. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 30 ++++++++++++++++++++++++------ kernel/sched/sched.h | 12 +++++++++++- 2 files changed, 35 insertions(+), 7 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 27b908cc9134..ee846dc9133b 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1032,20 +1032,38 @@ void wake_up_q(struct wake_q_head *head) } =20 /* - * resched_curr - mark rq's current task 'to be rescheduled now'. + * For preemption models other than PREEMPT_AUTO: always schedule + * eagerly. * - * On UP this means the setting of the need_resched flag, on SMP it - * might also involve a cross-CPU call to trigger the scheduler on - * the target CPU. + * For PREEMPT_AUTO: allow everything else to finish its time quanta, and + * mark for rescheduling at the next exit to user. */ -void resched_curr(struct rq *rq) +static resched_t resched_opt_translate(struct task_struct *curr, + enum resched_opt opt) +{ + if (!IS_ENABLED(CONFIG_PREEMPT_AUTO)) + return RESCHED_NOW; + + return RESCHED_LAZY; +} + +/* + * __resched_curr - mark rq's current task 'to be rescheduled now'. + * + * On UP this means the setting of the appropriate need_resched flag. + * On SMP, in addition it might also involve a cross-CPU call to + * trigger the scheduler on the target CPU. + */ +void __resched_curr(struct rq *rq, enum resched_opt opt) { struct task_struct *curr =3D rq->curr; - resched_t rs =3D RESCHED_NOW; + resched_t rs; int cpu; =20 lockdep_assert_rq_held(rq); =20 + rs =3D resched_opt_translate(curr, opt); + /* * TIF_NEED_RESCHED is the higher priority bit, so if it is already * set, nothing more to be done. diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index c9239c0b0095..7013bd054a2f 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2464,7 +2464,17 @@ extern void init_sched_fair_class(void); =20 extern void reweight_task(struct task_struct *p, int prio); =20 -extern void resched_curr(struct rq *rq); +enum resched_opt { + RESCHED_DEFAULT, +}; + +extern void __resched_curr(struct rq *rq, enum resched_opt opt); + +static inline void resched_curr(struct rq *rq) +{ + __resched_curr(rq, RESCHED_DEFAULT); +} + extern void resched_cpu(int cpu); =20 extern struct rt_bandwidth def_rt_bandwidth; --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 B84604C61B for ; Tue, 28 May 2024 00:36:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856617; cv=fail; b=qlf7bkNaIOjWOWCliTlsWySlEsgjWhXXg47VMF6wvGfTABJ8YW/bHmKEOdde+7fYDFly/bALwdNZEbyG8PC402ngz+kYB+tf0pzsPeGZG2KtmvwligUH0AyfB3hX1TAEfBVeTvMwKzdvdTPGSaM19mehskRQXai8ScSpDDs/QPs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856617; c=relaxed/simple; bh=DfU8l3qzeAcpsStugG3HXjWtnmfNPAonofnve0Q9pLg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=d/x4+IEPbveJk9LxtgG0EHq6wAFLp0VjsobZ5y5smlblbbPwxSs+hJkxHQyJNrnC25tMik+t/qaY9ak2kj32CTVovUzJ3TjGTPedxbwnDOGHXy02tp8PcZleDIlrxE3JSeKu5cTZpslzMcpI4XCQgnaQHLXJe0FFgdrxLiVryXg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLSQWx029961; Tue, 28 May 2024 00:36:37 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D31eRpvPTrJ0uEESz/GHnuCI/ISHK6lF6C7gx2MkcnFA=3D;_b?= =?UTF-8?Q?=3DQ62e7bXB1qrTEi7m7rEWlDmU6dwMyA/ZSSjcHS9hSaTOBUnYHZXvGMnSL7Lr?= =?UTF-8?Q?tPrBL3P9_ANAbrHOv6Pz+BqydVH1KSqKZo7N7e1wRIqfuEPRQNr2N5jwsxBPqmd?= =?UTF-8?Q?gPvJIQl2/KBCHw_cPGgJBfiVIGHXKpus8J+UrApz2AROZRz/JGFkpiJdSwvAaZZ?= =?UTF-8?Q?midKgMf6hbEYNTQtpOoK_wV37CA0mElW7SUAgC6Y7gGBzaZEqSdY1EeFMnSCLKP?= =?UTF-8?Q?uiw46XydDPFUOOynbBU5/lhyF6_iCh8H/h/H7weRvevl8AM99P/5nZ1xIraastU?= =?UTF-8?Q?snt4bCfU/VP20Z/GFWHu3qDojrzD5t2s_pg=3D=3D_?= Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g439kh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:37 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKcSXE037625; Tue, 28 May 2024 00:36:36 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2169.outbound.protection.outlook.com [104.47.55.169]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc5057yax-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=idPA71I6ZwU+YimrNParLkquEFrseMkQDM0fiBYUn/8nYgeGXlL9vtqrGDBiV25ai8uxQX8GYMxxir4LxHWknk8TKh/ukn9Q9hw9suVv6knB9DyyTQvD72o55ksBwN0u7HBItlsj3b3ArjP2FClh2vkRzXFbtmH733sYfoR6XL1Qi656am5XBQ/UC4cAlbIAp4wueU8prOcD+OQ3GxKWATb4oeILe+GWv+Txrb6PWtN3rpm66kDElVSNeVp+74XnAO7AO6ZrhcdZ4VkB6ps4z4EwZKSbgtPdeNHLaXKQASnZSuoKj8hioCFPuWCdm2bITk+4UmSvYoYdk+YJ5kR+vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=31eRpvPTrJ0uEESz/GHnuCI/ISHK6lF6C7gx2MkcnFA=; b=du1FooKxTyXTb1lOG5jVZerxIIzPlrf3QyBebFWoSnyCeGarPv+dKxsOXYBiGYBbSJi7cP2l3+7orCBxXQPjZ64Y4MgS7nzWx6g8C5Suh4MJHlfhc1eJnnun18X0WzbOxc3Gv1KfgXMzhsGSZ+Idpuj9UNHMLroOmqQsHEYgFmOFAh3THX7fvSPiJsWh/+sUhlG7d8eVpl3Mm/FlcYMxLewfMhalRhn4I8kdg7KS0ufmbUAUpFhedQhuzTyocB076Unkp+O7Hh9Ob3rHMxpGeuHPqcotJdQ2E9HCEJL80oz6hjdtQCGni+SWTrhpr+xi9Cyr2DWTUax76SlsN37Tow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=31eRpvPTrJ0uEESz/GHnuCI/ISHK6lF6C7gx2MkcnFA=; b=FSbzclPyKPgg/r55VQucxYuvtIj/MIsOX3StrCyBkpMPkX9PDt35uJVim71xi2m99jlbBa5+nsIqPdFGP3d6KtuAsFXFMZMrEsOBdtfWxApFLXvqvu7+h4O2MwLSfMKX5QrFk7tyvKTD8fQsOTrmitYc3lDpS3Itnas5JBH8lqg= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:33 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:33 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 23/35] sched: handle idle preemption for PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:09 -0700 Message-Id: <20240528003521.979836-24-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR03CA0284.namprd03.prod.outlook.com (2603:10b6:303:b5::19) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: f6acfcbd-1e76-4a18-4896-08dc7eae39ab X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?vzUVzKyXQ/5cyaDgQ59lFXMGmAH1H2il7mVZS3ZFRZHB5c4fsgNbweX7bCo6?= =?us-ascii?Q?OhiHt1gRrZyf7LYq5GgwtJb529tw4VPjY2q6PvS/8TY8ZXsFqQ6u6LWuS2I5?= =?us-ascii?Q?C+hM35kH+527VGX4GZCHsBsyfBstFxoQEI9eebbnuM0okDE0EPUybZDZgLdt?= =?us-ascii?Q?DQIWWDQz3EI38t6QYXP9HQvvfhXKtiElAUp0yhpQ46IjsutPX89Qb0pY83lL?= =?us-ascii?Q?j9zCZf8vJ+rx2f+NGJCvP9S51XIqlTPwOWBPxS3ypBshbIxTqqdmdDaeCV0X?= =?us-ascii?Q?a4WuWMBR2T/UvcdmliSCD9T/TAD85Hnh3nm6FaBNoW8AsphG68fe8Xedq2zw?= =?us-ascii?Q?kD0Gz/ehELQxqjHFXjjprdubf+qwbNh8Gx4U1b8ZfX5iPvg00LVLX2ps3prY?= =?us-ascii?Q?D20yp2s+AgDZCwp3uDDB8ZubMc9tCoNASuZt6QKr+/3gGtVO53sJ79C6BaHa?= =?us-ascii?Q?CAIX27sfw90ofZSkZnG/KDlflRNrJoDNsXj4+0fDwFVv9rM4cuT5aeXVacGm?= =?us-ascii?Q?tSELzRfv7eqhy+v5c90ERaowz41Lh8EDTx3jnu9ZysFi/D5nn2H00/f4Q6/U?= =?us-ascii?Q?n2SlD8D8p/OF/pNPeGOilBiBn4ovpKQxAbidFTfShZM9BDyi5cBgMY3wO5lj?= =?us-ascii?Q?NLx+wbR+AmtkagbMlGMCitdkjlkEf4Yzsx5coWB5bI6TEHHewXFvjSlyTOG7?= =?us-ascii?Q?ZFyutn+iwodkZMgYjKm2Hr7PaO21D39M0JR0C72gR2QhQ4e0Et/QW+hlg8Ni?= =?us-ascii?Q?bZiPZmAFI/Dth9ugCpTrH3lSfJps+2O5Ro6zhN09suVBMmj8QO5LJGGUVSUr?= =?us-ascii?Q?T+AM+ExSXDeRKjbYaigVbg3MBESb+FeEtSmNIOH2tvMCHoHPtEktpOR1GyzD?= =?us-ascii?Q?TtyvXFNDn+mWp1rdR43i1kbgmUEPDEBFZWe5NDoY/ynavajSnT3vFOF1iG7e?= =?us-ascii?Q?nZ4n+MTAIbUT1s+LkO3k9ERhYxSzytBbWlc9y7KPDBDHre7N/R0s9HHgakYA?= =?us-ascii?Q?5hNDfgNVHoFWPd7uDdUoYOBDdbLYeKHdXbrPwvVR+GsUBaz8rH+UOfweH7N4?= =?us-ascii?Q?vvx2NSQXf/rXLR3E8DKIfpMMAx+WmaQyvGQcpAy3eBG61UrwUKMGJfmJAq5V?= =?us-ascii?Q?snPZ6NFz90il09fpiJxeLTJ8TPf2+sOuUbxLkgTz7RuK3vgJFdbyFw9CVHFU?= =?us-ascii?Q?XKsPKwuSkRZprx9hxR+MwnRSHLWAj6P6kYQgvQ=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CREglcY2eiVBn02TEON8YU52D9sxmvuPOgkiibMC9mAcxaq3SisettEVlXNS?= =?us-ascii?Q?QcnlEk0HTfQXZvE6LWAICK5mA3nus4k8o7apO8b97hIVmljUwJNiuU3N8PE1?= =?us-ascii?Q?+uCndyGi4gXZhf/gS+71pnP4dSWzMkYiIgOqJVtOXP93TWSRd7J5mfvpObBR?= =?us-ascii?Q?zPG7gSr1EEp2rDpV3lS/zt8nuyhdSBz01GBFIhjbmlH36ULr7b3a+EmesdNM?= =?us-ascii?Q?B2ReBdiOKRGq/gma9i76KgDS4dHHuW+/WTNuQzcnCfXMRNihhOMPQghsV/y0?= =?us-ascii?Q?LZ5CfV273wQY/dS5NoICvP2bc0eT9z2aLeRVLxDqNH1n0B9pZIOUipOPUpMR?= =?us-ascii?Q?MViQ8MfzSCwQFUcOE6vG75vMaiMv6F04QZp69/4Rf8IIGW5o4fpv2FvoSGJP?= =?us-ascii?Q?3ufCNNjWza0UUR0wLSx5UCZVTNvU2mTAIi2xEiih3ZRyb1fjxQbTnb18qKzE?= =?us-ascii?Q?xQH6f1ei0aAIP0pA8NDjuG/jXZ+m6zACmm+QMGVS4TQV4uFv1coH4/Xe4ZY8?= =?us-ascii?Q?JyQE/MpkvC5xS5flnSKaG2Huyu6KmP51bJvmbQDawhFMiCNSssBqwBOFeMNo?= =?us-ascii?Q?4IAiJhLzjLScDLiB0BJrNUXMVQJ21r06nIb2CDa5e682q5OrQs3AptW/WyZ1?= =?us-ascii?Q?poL+GMjY9QU4gO5ua1TnmEhhtso36GUxU0nTrrg15yUH1aV2FNy29G7XVg4i?= =?us-ascii?Q?zYEB4dm1IUzYLhgfdCzY/8SB9BprujlDi9Qqk2WAi6K3+USDbN+1Igo8oDsV?= =?us-ascii?Q?XKiAR8TiACmIcpO3AGr29GyfZnkNDg9mZpqmXyFGbeoGYrCaKi3/3afAxDaA?= =?us-ascii?Q?UiKNtOCMuhH1nFUyA3q8S6nWewhKfsWauz/IdoqA/NuC36ydOj/+bt6yt+q2?= =?us-ascii?Q?+qLoVhZPpUPBdm8qD13NCkzOUMpH1FNyPQK406nHAcMpaFrstxcwAXgd6xNv?= =?us-ascii?Q?N1eO5aMClbv4kjwFzedXHu7Ah6p209jQDvlGAtnyQ6VbUIZydvrxILy7NmIb?= =?us-ascii?Q?xHMeBtxxivgtT9Jyj6ovlYrGb+70nTm0uIKIb5bL/GxZ3P4i99NiJvtJBrOO?= =?us-ascii?Q?ZnMn6C3yd8aPvPWWHkUulv1a3lQBDdsbxtiy96PogSHLshWBdGM0qJyTQ1NG?= =?us-ascii?Q?X75/x8IM5yOpKCBewx9/R4MdWHggR+9IdeOZ4sQAyze6DXx9fpzd+oXXy4JI?= =?us-ascii?Q?Iq0WT1oKcP8UTtU+57to4iKDw82ZZ/VUwVvlJXj+IZvgqvI2jQw2gSMmdKQg?= =?us-ascii?Q?+33mzPeX6XMtwnH7FKPLNyJx6tJAi5qnFzl91fcCTHbPxTEPFJGSemSTJ92Q?= =?us-ascii?Q?hHWAIAOmjmaIjOiaRr4Mz4pCehZoiUvylxfh5uMXFbNWZWVGZzitqwuxXumi?= =?us-ascii?Q?CFTF5rJo+7Y+b71A49mPerq71N58pdrLsfcBe+tdFcGWxFgEh6nO21ti3gRR?= =?us-ascii?Q?oz823kawoE1yLFs9DNN4QMQceJRZMF1db0uEzcTvqr9+Aot9XIM4hx1bIxxO?= =?us-ascii?Q?Jv1j587LvfI6PFRkfmKP2dfRvbhhkF2sbamRay3Rl+9sIYGafzebrRWuP5Z7?= =?us-ascii?Q?Am/l/bbqYbsjk3ULMyxzd2/Jy/J8cNCjzgtCBN7NwfE97Pbp+WQcO8T6Y7XF?= =?us-ascii?Q?JA=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 6+TjMPGpaX/+3hu7Gfzkba1EkJCTflba0Uiw4ICzpioHhqKqcZkGMfl89fBhh5qvcul8obvTBS1cGIT0SPuqxvDvV3ye1ETHmAV/ISHdW/fOMBaHgYosR9XvlQYXdcloxstDdTG5W+EGBgL7/xyEavjs5CEmQf63gA7cuXPkFwHB9AQleKQYwL6SimwxwIuFMDpB8owsPhig9jllNJt/9GcDuVXqBEVQO1Hmgi02OX25QNxuEYTxAVrO0CTFXoVPcu/1pgHvYA05kJc7vMeWD15KgkXkdgSiHdAEMVqko5JEkmbFoVBV95BIPcuZ9RsWA0Gkyd60V8HMWxIBRB0wP34aMSeaRwW5WolgPubVKZAlnrmSH8kXR+vpq7C29JSoPlhNIMQmx6UESKpUXJTxaH2lVPhisqLKQgKa9TgMDy158dG564lbmsiLeiCU/5QoZAGQ72TTbcRLC0hCt5OACNa+EKDRevZ3T9uJqZOcYpX4v/IT/UcTOdUT920bATbM3cjDu8jZrYOuNgPKGp+ytMaAxws8jr2RpvF9sqldVQR77Z4KJvCOj3YOkuGPlA2HQfUKleNieIo3fD+JKCdX4FTeMRPXZhbZrAm9Tp86FKs= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: f6acfcbd-1e76-4a18-4896-08dc7eae39ab X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:33.7488 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WH9VSXpvSegLI9VpidBmiaIIGJzwbwcQ9PVASnumDUNynShKsmactHCzDbkx0xTkHwNqNh6pnUSozmFGy2SLtR1a0l1js70zkHAdLN5n1vw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: VKKGx6_IXeRg_TGPgnvbB7m-JRXGUy4z X-Proofpoint-ORIG-GUID: VKKGx6_IXeRg_TGPgnvbB7m-JRXGUy4z Content-Type: text/plain; charset="utf-8" When running the idle task, we always want to schedule out immediately. Use tif_resched(RESCHED_NOW) to do that. This path should be identical across preemption models which is borne out by comparing latency via perf bench sched pipe (5 runs): PREEMPT_AUTO: 4.430 usecs/op +- 0.080 ( +- 1.800% ) PREEMPT_DYNAMIC: 4.400 usecs/op +- 0.100 ( +- 2.270% ) Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index ee846dc9133b..1b930b84eb59 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1044,6 +1044,9 @@ static resched_t resched_opt_translate(struct task_st= ruct *curr, if (!IS_ENABLED(CONFIG_PREEMPT_AUTO)) return RESCHED_NOW; =20 + if (is_idle_task(curr)) + return RESCHED_NOW; + return RESCHED_LAZY; } =20 --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 F0A086EB5C for ; Tue, 28 May 2024 00:36:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856618; cv=fail; b=ZEdwqTk76zQxyqeDQe0nxcD+1ZWzO7ZJJHFLelEvc9FkVZ9ageGOfO2UdpNKSw+DLtU6tBjAvKFywUiioiNNuCQAVfLUeJePETJUDWgXoBvm9/UU/DwnABDpnQFev6l/oJplGZiYPhhcORCxZYte5zsLDhEvctRqzcpgK7QhVDo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856618; c=relaxed/simple; bh=Mwx4/heLmV+vteJUfAIUuCWtJTvrqjr3/1RxBE8qbOs=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=t3px3SYuG5GQPuBuMECdTTb+t3pchjtDsoqYqo8YDrNOLRyfmSv/Fi5G8rimBz9bo3oYCGqa+fIk5mpsyqWRQAl8ogxlphv1sfiIqVUvuOjnCWO3XFFoUkZFimhWpphjpVYC5PaiuDxrJyW5/VKTelV74xXUVKj6dFSV/WWQpaQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDJ0e0009949; Tue, 28 May 2024 00:36:41 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DaNS8C4RWWXI/OiqvVg7PrPyxFuCF4ok/0PNMpoYWqVs=3D;_b?= =?UTF-8?Q?=3DeSmZh2SlJIrZh7JtKMSdOIyvuC6P2ib3md824AkM50EuFQ40SdfjmTgTOLcZ?= =?UTF-8?Q?KXUmsNq7_KEogGA2HhyCCrCEnaZkx+mBwlhvxtrzgBAI9zrY+HyE41tMRvBdLXn?= =?UTF-8?Q?QrUewYQwoLDz3d_PMwsF91fKNjO/7IUz0q0L9VFJmpGdcfOjgNNv+XfBy0udiBA?= =?UTF-8?Q?b3JWiG0UTtgKu96iCTrE_DZ5Xqm/O5XvA/ffB6FyHdRZxkNwP8iR0L3Jcxe9+ke?= =?UTF-8?Q?T3i/QEdNwNiPv2Himjo7B/lzbz_9BTKa9KxJuyIDLa4gnRrtao7gFN7y+xuYSle?= =?UTF-8?Q?d41S35pPLdrYXKzgTqPQ+SBvFc5XctPt_ew=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g439kj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:40 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RMfYqq016188; Tue, 28 May 2024 00:36:40 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2040.outbound.protection.outlook.com [104.47.56.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtg7h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ROquyrN0vQOaUXhXNcZCXyeOxRIyUpjVMpA3cMnwASeJqNO4VArkmFSMtBmrJDnIBXp8p/pSdF4RJBiuC+g3sTGCSPteilB4k2rBQsStJ8SSzoJPz9pLD/4XR5sQLFWEsVc43gphF0VeLuGD5ZgLVVfi0CG6rS8k1Lu+qf3IVwqojbHNGlu/fUxQXZm6RxQ3XRDqE4/CDr2VqCZzMwSJoJE1DYYXAr2lKmpb/PpCNnpMaZ9Uh8bplrmiYjZ5r1XETDfLPycdeBVMLeqYaBqimFEbvI0yo8+1Yn8H0qhc7G0w6yi9r3TgDoFipPuGpIDMaWUch4kdDX/lIj/SiXnLXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=aNS8C4RWWXI/OiqvVg7PrPyxFuCF4ok/0PNMpoYWqVs=; b=VrDkaHSlk0a+3qe5BqleEXR84VFF+KMPdCdPgB2VpqmZ9RDvZtyuOjwKm1/zJ69XxHmI6wLdw6s7BQvURORdCnHawCCK5XKXrGZVmahJc3kclutOnKLoux/e1PoVDxjPzzyRuxG8y2V82XX8ZrMyXUCtsYi44duWt6aS0WJmZ75rD9y6Fu2/7yi1wVAsPiePZQ9qxZ45NHibLIMQ9CiyWznlZeZoPWFj37vrefRjYkj1eJB1Y8JWX38j2NFDrS9i0fBtOrGXTzWy0cUDs0pLMMZxIzQ1T89JBeBRkcRC/sZY+5q/rqvot64q/NBGeN6T/4q/tHUal6e8ELuZkhal2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aNS8C4RWWXI/OiqvVg7PrPyxFuCF4ok/0PNMpoYWqVs=; b=czMv6f1uourMvRUhDFX1GtVs/E/Of9bakpDeyMX/dRBWskDXP9g4R8cH8tz9AR3zHi02rvIgUWePFn3mI5LAVce2MzDVGo8p++CppLb6ypisrSCaMqPgfN10VDj2ApaxPK72xEmajXGIsMKXSHtsMxRHtFaTYHr3T8UqAMcFzm0= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:38 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:38 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 24/35] sched: schedule eagerly in resched_cpu() Date: Mon, 27 May 2024 17:35:10 -0700 Message-Id: <20240528003521.979836-25-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0282.namprd04.prod.outlook.com (2603:10b6:303:89::17) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 394699c1-72a7-4fc0-a39e-08dc7eae3c5b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?dxdWLjW4Fj9+XB4w7sVl5LMg35qIIrUn4UonAnJbyv46w8g+8H1/GD0rv8w2?= =?us-ascii?Q?2jVGj57NSlB7fAE27W08k2fFGYARYneCG+3TAp28rBEL/QuxS+fwJVm9aYjg?= =?us-ascii?Q?VZSZBelMpR+KLVgIFXuU2UN7FWPWTBg/FnmadKTWhvsjzbAx+nsEcKvM5C0U?= =?us-ascii?Q?TCDp7URSg+gi/fNDWdgee9dCiQEzhXk7cQy6yiGOAnm/SSN8Da1yWFJ5Wmib?= =?us-ascii?Q?/CfkQ5miKzpQam1HMPC3Dejp2vGXc8VbE88rFh2lN72W5BT5naPMYPBx1Y3I?= =?us-ascii?Q?neLXrJ7W7AZDYknoD8IuZVtbSklnWXBRSXCmnogPTJa9avc+zeKgYGZzWidc?= =?us-ascii?Q?R8GWwzcR8XTKCSqW3zRZ5B/CXHYVT4zlpNjpkQCKw0geDUygtEO6m3BkrTRz?= =?us-ascii?Q?KIC/1iSsF9b2QRsP1V8hAgZpO64UW+/Nn0fSxL57OogcdvfbxI3th9QyU87z?= =?us-ascii?Q?YxILPZTseXCQGJliJJ0PvO82z05o7tsMn7RGadbI4GZAcaR5OKm2yzgmrzOM?= =?us-ascii?Q?muQt7JG1YrSOCCdO4lg0uWaFdbUsIa1HpM8dgkOHmyvIzVeYGM7FYNjJpvCQ?= =?us-ascii?Q?QVdmtFXfA2/c1297PvulIs1vgq72oTDbLQZlOiinaQuyEa9Gh1sfmlqCNojH?= =?us-ascii?Q?8n1clqxrlwZwvB9z6JkU/3Bj7MpWvAp3sEHIIJCwbzyDbL3RdWmKiSi7iGxr?= =?us-ascii?Q?IdWHxLtwfQCRShp7EHlJwi1dxXy/3YT3DikXWexR/jlgCGnmIwdU5yLICHky?= =?us-ascii?Q?7HttKvE83NEoycwfJWPGZnEiS0ukrQBma0x+7vqyPrBKZa9tTU7IA2JUXLkW?= =?us-ascii?Q?Pi7XAvm1elm3U1mNLSpMSdHURDSzYJaeEFUMpaQb15+xCCHia/Ms5TqWIZg+?= =?us-ascii?Q?Cet3Ln4HGwkmcYxNIgsvOEF4PDYqm47CwtXBl27AYCK2zaYUp97egmGFFsYX?= =?us-ascii?Q?czSmpigQhBavUVO53I/gKtR1qxIMxypSpyQsGSo5QhctLbWyJ39Q3+UOvMZg?= =?us-ascii?Q?blSPDucr4qyLZSB1OjVRvscu4mUR1KbDIo7YGUYG5JF+nVo2gI1X2rRXBL0M?= =?us-ascii?Q?Flb4rBgEpU0iGybbqQzI+zYGQLywj9GguuPzfn11RajSh/LOdYxwkhwYwWpD?= =?us-ascii?Q?CduLS4FVdhH/jFFsAsrLb36U8jBFP/lnJxg9hFMHFpjwVMLURvPJgGr/F0bU?= =?us-ascii?Q?YzSwiv/IIFavctXS+04jecvxzn8YRyC7oveWsmVzKlCetKhlauUtDpk7ITGO?= =?us-ascii?Q?C60wpIIb4XiIltR3rI2TGtISVmuC2owRxzaYGnHT9A=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Bd1H57JzNthpUKErw1ageFiimshHjEhOBYqKKY0gvTXS2S8Wn8Va/WJEa4o3?= =?us-ascii?Q?tZRd+BWsiiXKNs5EbJPS5RWNwQn3JdVp3BqFEA8dWgXD6H8Xr7CeyE7roGN5?= =?us-ascii?Q?yVLBbpm1wXsoZt9r36ean5n5svmYnjDbBE8EwfT1kMlp4pef2Lc/OkXsu7UD?= =?us-ascii?Q?menZLnaQxB1LKfSwaGvG776w0xiYl7qqIVklKSHeIHxjrRii8MM2nxVBrmbl?= =?us-ascii?Q?zTS2f9H6MHbftLmS5k5L6Y4qesEatkJCR7X4CKYpXyjg/jRjt7XWYxmPF4Na?= =?us-ascii?Q?OnkIGEKkt49ucXMxahHKL0K5nrHerj9CdQ5xun/+1TvpDqsl1Hz96qhUVL9n?= =?us-ascii?Q?5Z8fx1kdd0D4bE5IIaghyGLdP2J0wIQ+IovSLs/7BFx7jsViaNEwvAgKKTTw?= =?us-ascii?Q?wwkdKin5h31Xy8BZo0zwbjaJGnOw0cxnNBJwdbWsa49LKuajKHDkncMYzm7R?= =?us-ascii?Q?YM6mlHAdaj2JhrYts62qFyOkCX3ETNl+hMmLI3GQAVJsn02NpF+Dkk8uqgzn?= =?us-ascii?Q?GgEDajja2aoXUa7FL654QmwmusO3X6b35yHXO+HtdtK61kb9f7e0zlbMLVgz?= =?us-ascii?Q?Q/smxI4G49f35glgBA2G/2BGI6a5xtZQBOCWqVtonlmwLXFfrG7ol8K2lbH1?= =?us-ascii?Q?X3ItrjEU4P/RmjDyCQv4vntpIcQbCfL43HAHvpa8lbYT28+DITiaf/8xMqQq?= =?us-ascii?Q?j/35z4WtVHGST7bFgg++UszimfxT9NiMk04S3o0L1maqH9pvAImYE/sgFdH8?= =?us-ascii?Q?t4WT5SzOWmc/RuZSLBVfnWN4NW1ve1sorGgYtD6N4NI4QKfOroWaw0a9BCqf?= =?us-ascii?Q?YVG47cwxB2/tjZFstyFRCeMnuqX6SVk9jwwpJVeXdkzRHrGrqy4mRrFtg8T7?= =?us-ascii?Q?1ugo11xZ0E3tix+2g0E6AP2J2PsihskEKoKDCfehMLQ5h2XFiP1A3NQDDXgw?= =?us-ascii?Q?uKIf3DmLeD6YIJwUlbKapOYue/KCya3D/+0e5cGRfrJyCc1AxtYPs1dBkcQj?= =?us-ascii?Q?KRqf2A7OfrHdmtu1HvSuU7O163DSrWfViWoGurx53+YpzFR+L/UtGm/wGGGN?= =?us-ascii?Q?ISVqVLan/X7niuXAu+/JXalSWqJe9REe3H78NSIE9NZgu3QmHPtSQ+eTmDES?= =?us-ascii?Q?3PTuHK3WwMRzNm20DEkJcHeyfo2Txx8XI2QHeX1J4FW9sMCsfODKvGvuR7dd?= =?us-ascii?Q?8hLMLrxpuGMzvGuskCBSdS8VhqC2dd5rGbi2CkOpG/41npzMlhtAdxlMVJfn?= =?us-ascii?Q?gtiW25clSqDWfRp4+MJHY9nTmFdyOtxBh4p6y3EiZJ8TY0mCedF5wt9fNCty?= =?us-ascii?Q?Eq7aFikhBUDE7QJXg6PVOJRUMrOZagbLG8pGfRoMmBWxtoEkhk0cmOrkUm8b?= =?us-ascii?Q?iM9z6ZvwVovzPZJ8mI6uH1BP3NcsBZzLLL6Roz9/KoHWI9N2YxYfV2txT9dQ?= =?us-ascii?Q?O1WfmBQ4PtAl+lyxzfEP3sWtRIHnD3rDYZRYk8ZVa7xPt4Lo4El8PJn1QVOY?= =?us-ascii?Q?0Hqm22CVoK9NDWo+BdBkb7zRca7H7c/1G4147oaZ8o4cbXyCbKr1yLFSzSdO?= =?us-ascii?Q?2zAV2sGjz60RhFYRWC+n+u0paXrPftiAwHOErwMvEabSCIKdF/mzEEg8VnEa?= =?us-ascii?Q?2Q=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: EHd+Rs0AXcDpo1SHi572eeB5yfsQPT15YHlqxPE4QIV2KZ4vdn+eaKUsQqhYHwEhd/wCM4iC3z2f+80Tk8hF/7mswNBwBS70/FH8/fPGM+9EYhH0R9Zg1tPe5VBWWm8G4EyV9/eC01DOy4mYiVNfn9MOAZvMgE4YpqNX6HvcImCO/h8G7OOjvNLxXNEotua0Jh7SWdszbDXapq1TwDcaswL2w9qwKhb8xX/+t8AdN8fSiBqpWn7R3VPxDVbTLpvSxVDhAuT2nsPJGqANj1qa1nJD38nbyJzbc3MxDjRzXuPpcC7rPt7KQXVfQGuQtEPY5LTrMzEomvEqfIdXloqqTMgD4v+mXH6WWiwpKn16Zhog4/UnAjiiJcJVJE3zFqVBpClUdPC+gMAaiR2bIDpSMIbw1rR/mdMo78509kCJHao68iQTfZi0Kc4TFZ15ZXxR0FnJLxzSedQ/FXPhEsqgaowKhrXEqyAxwieEwgJERBaw+SAG+/LPsritcbPQPytmKNh6tAJp6yiXMST9r2P5Apu4Hm3JSMFAHTuL/9A+EiJHZx4iI+twEvTfIL7VxlODuVUcM5uL2VWFs2H83Ol3ROC0bRteLl43niqjDiOQorU= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 394699c1-72a7-4fc0-a39e-08dc7eae3c5b X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:38.2407 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rewdJq3kCSrrxeGeS6GW+hvD50L0rOcITgJBYs8GY0jyoBdAy2GbKLRmCtflGOjtbumymrq2p8NBHUM/I+j7HYq1i5PkxpMogdLaFPxQVcc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: xHIHnNaJOPstmuQBwrSB2x1HL4rzGM6d X-Proofpoint-ORIG-GUID: xHIHnNaJOPstmuQBwrSB2x1HL4rzGM6d Content-Type: text/plain; charset="utf-8" resched_cpu() is used as an RCU hammer of last resort. Force rescheduling eagerly with tif_resched(RESCHED_NOW). Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Cc: Paul E. McKenney Signed-off-by: Ankur Arora --- kernel/sched/core.c | 14 +++++++++++--- kernel/sched/sched.h | 1 + 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 1b930b84eb59..e838328d93d1 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1035,8 +1035,9 @@ void wake_up_q(struct wake_q_head *head) * For preemption models other than PREEMPT_AUTO: always schedule * eagerly. * - * For PREEMPT_AUTO: allow everything else to finish its time quanta, and - * mark for rescheduling at the next exit to user. + * For PREEMPT_AUTO: schedule idle threads eagerly, allow everything else + * to finish its time quanta, and mark for rescheduling at the next exit + * to user. */ static resched_t resched_opt_translate(struct task_struct *curr, enum resched_opt opt) @@ -1044,6 +1045,9 @@ static resched_t resched_opt_translate(struct task_st= ruct *curr, if (!IS_ENABLED(CONFIG_PREEMPT_AUTO)) return RESCHED_NOW; =20 + if (opt =3D=3D RESCHED_FORCE) + return RESCHED_NOW; + if (is_idle_task(curr)) return RESCHED_NOW; =20 @@ -1099,7 +1103,11 @@ void resched_cpu(int cpu) =20 raw_spin_rq_lock_irqsave(rq, flags); if (cpu_online(cpu) || cpu =3D=3D smp_processor_id()) - resched_curr(rq); + /* + * resched_cpu() is typically used as an RCU hammer. + * Mark for imminent resched. + */ + __resched_curr(rq, RESCHED_FORCE); raw_spin_rq_unlock_irqrestore(rq, flags); } =20 diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 7013bd054a2f..e5e4747fbef2 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2466,6 +2466,7 @@ extern void reweight_task(struct task_struct *p, int = prio); =20 enum resched_opt { RESCHED_DEFAULT, + RESCHED_FORCE, }; =20 extern void __resched_curr(struct rq *rq, enum resched_opt opt); --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 F2F6371B39 for ; Tue, 28 May 2024 00:37:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856623; cv=fail; b=INM92nv9gLrgxuayid/8hDCvJnZJPFMGs8ZHg0s/bX3+TJs8mXJSJ3hzzXlC/Lwls8HoQcOTslbYwOtVKdnqy/tp72/KsWVAv4aMrbU8DqAV+m1/WQ8bXfia0Rt6K/w2NZ7K/Da7LkmnFeQo1/dCTWTPMlgDKTAlpL4d6+LsOxs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856623; c=relaxed/simple; bh=AcC8fGzlvQY6Q7bPIiUxuvQ41GOudI/fXim5Pwc+Smc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=OQNZwGiNCsEvlrSv4F5s0bjiWn5tIpFKlH1JsVPYMUEKJkAEVbjvke65xou0M/1HNgjByq1mLV0ELdNz6/N8tiYRkPssWyS1GQPwAA+v49llcTp8AiCouJKYbSCXHnQDfWP7hvVrw584AV6t/uN5B9Hgabwq6A0zyxJ7XFf9WxQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI4lW025171; Tue, 28 May 2024 00:36:43 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DnL3tPWurbDorWycx6Qrw09g4tdHQRh5vOFmLrfEeXpE=3D;_b?= =?UTF-8?Q?=3DQKxx8FDTZsQOpF62ii7OHlfDpHzsX2bQotc1xmAGeIDGTVpax3dQY6UugroI?= =?UTF-8?Q?k+OITIka_Djqgwf6hzrbV9Qh6wIZM+g6u8INgL+CJgWbzSLrQKihGBItFXEGUir?= =?UTF-8?Q?WwEwk4GsmPfiGg_0eT5ofsfZFUyT7oFHyoi7ARUEw1zXUsrA6n/KniYCmd1Axgu?= =?UTF-8?Q?/NaO/SzARIPby7qnc4/A_P0Vu/QvokZApByJfks46K9oTCrxz8qME0xCwrkubr+?= =?UTF-8?Q?XfjkJxTM/n0hlT4TVRJflvNK45_BceA/AsGxkjnj80Fa5n7CeOfeqeH7+VqITR5?= =?UTF-8?Q?F0eoq1/u6V/uvXjpGCiUJ/uZvAhVBFLV_XQ=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39ck-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:43 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLwloh025981; Tue, 28 May 2024 00:36:42 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7xxd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PlCCFl9cePigsxR71zUjsw3ZuWb/gGnF4tFssBT0eF3r037CArPUBAuJCW2hDz+0f0vHMRc1gwV1ZRckvAOxfWFQLZoFMDYxPD1VWvIpKdZkBRmxN+rK75icaFlG3kz5rKuKGD5XBXPrFlrO7JMP2crIbbNfkdXX5XDxSrgv5FdIdsYyBKw91mb7A0k26DTEKPZViocTgwYvwHZudGrMt8qSCyt1PWJ4aBUbN9eZfP7y6thxh7+Mh7pVyG00UIG8nomtwd+JPmLw+SpZ19t9gTvdLcT8orzfQ4IdePbtpNzNwKuMZKoB67ntyVdWrkWua5ZVKPQrii7jgDM58FG1sg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=nL3tPWurbDorWycx6Qrw09g4tdHQRh5vOFmLrfEeXpE=; b=aYA2+enFyRTCiI61UKPY3x1gxu1BeJbP886d42nh4FDoPqLcL/kutX/hKNKTwpqyPF76oUfE9zEMtB5UZBJ7t5i1hzI1zRXBkG3gjgFWqx8gvTeFqWcMdZGqT12dnRfsQeRkt69NMZ5Iv0CtFR7bCMepNfe2citausLuv19LVkKDIurspjKP33INJMoCcd3y4XZiCqumEmBXWrVnC9UsTLpdL0jCsY9R8S+Oy2pcIJ8eZtElx6euieNiHcU911qFLmBNRGEBBmyctmAmhlKYxq4O7Ocz7eu8B6j5p5y6cQ4MZt4dcZJmpMGFm+M0BPoBa1JkFsspABPHpULcG2aNEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nL3tPWurbDorWycx6Qrw09g4tdHQRh5vOFmLrfEeXpE=; b=Chb4gaKCvIW7IXFk36x+ai9kLw7wOx/FzVnLcKdQ5Alht9M7HTDz+4WoCZnWEx9ZByioMkcMk8JsD+BhvFmHi+sL09cBNjyEoTErFhV64NcCRCe5A4hCqGOpBgd/pQy8Cv1GYhyOHc51/8OG4pCaAqEwvIiW7Uo2SXoyT0vUlsM= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:40 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:40 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 25/35] sched/fair: refactor update_curr(), entity_tick() Date: Mon, 27 May 2024 17:35:11 -0700 Message-Id: <20240528003521.979836-26-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW3PR05CA0024.namprd05.prod.outlook.com (2603:10b6:303:2b::29) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: c0fbf81a-861d-424c-0551-08dc7eae3db8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?yPCSd7OXKuGXyWAVpCU3/40hVVy0tmjBawbo0l9kh75Z+Alrp0f77mo4Sd+h?= =?us-ascii?Q?AeYXhx6yH3CE746hR8hv8aH6RwPksLicTeFHiFAiRCbQNIbi+ViiKVbZJ1Xd?= =?us-ascii?Q?wtZyVmWSrGc6rXfGfo7tK6yJ8uJ9U/RI6zJihqrsyDDM8152bSv8qfdcLDC7?= =?us-ascii?Q?f0ggqOlwU2HcsL+AIhCrXFtsacEWCRGObjy6k4jZW+7WDTlkBFLuH3JXfssD?= =?us-ascii?Q?VL2cw/Tig7XQRXQMKE5BGVqm3uPg9aN/cK3x+oajN9tundadTD9a91jxNNhW?= =?us-ascii?Q?KNORtkqJFE9YKZr0XaQivhD7P2sTSl3Wp77Zsxi9wgELqc9KHOQtUfhokmuO?= =?us-ascii?Q?KVcuA2czWCIpl87OANUuLZxrdoBIPBrVSptL4iFlcaCpJMoMyyzduJLztiAi?= =?us-ascii?Q?gjMVwmJIA7SDZw0awvFozXTav0PnTOA19UF72dzi2a/u9rYqPh4ozC2wvZ+8?= =?us-ascii?Q?UVM/JI+8vqa0RpVcCi9mQgT+ZqD+Powrs6zZDzrY5xCDyBNJ+DeY5tGhS9A4?= =?us-ascii?Q?H0Ls+1ezZ4Alx8T0JGHeWneaS1+lHVBE+1mM3dNt9Sa0wBNp4wfdVvYiu759?= =?us-ascii?Q?LGQUOPbAFs8GCTI8F2W3GkQm5g1X9JFBX1AjG3JDDykShEi6BUoqn7U9eGRY?= =?us-ascii?Q?qhMh0eot/3bgk8eQ9GFZV3OFRdMnULjQDv8E+0Q1PZJCC9VotZorThXYXsaY?= =?us-ascii?Q?F5ZWGWt6SyZZoIENBTA0JIm+23B0E8noXid1JTsrdtcX3BWbldwO/W4TBcNt?= =?us-ascii?Q?DBTekDLY/hqG0bjI1lHjEuCfEINlypHo6z3Gb1QEU3hf+RK+4jkKGWiA8YmP?= =?us-ascii?Q?a9HzDbJgSpIBieJ6Ro2JrnD35lC/mPhlC7CnnxV5rylbyKf48N1vQMjd2BlU?= =?us-ascii?Q?VT63NseGNw0wl6jVlPvi9rcU++K1BqD0NbGM9lY87jE9JBLl0MlvP7aZXfVA?= =?us-ascii?Q?hykmxh8r07XL6Zp10Lk6/TtwuujJK8xwGZirPHDNzlVQOB4Tqys5z/MSqiDN?= =?us-ascii?Q?iB9fPiOXtOoD7795LhuhbanfIjtsiLJ22bQFgL0GI6obi91EpLfcvkAp3Jvg?= =?us-ascii?Q?HcKzBXwprAS1F3W0+JR150S+rhTsjTUk2BJfiBjEpPVOSpuorPorfNM+fZH2?= =?us-ascii?Q?9+VZ4TKsuJxFCwiIuK2ZbbPqgvfKy/Tmf7MX4Hm4YdCTKPBLgCewj+wdGGT5?= =?us-ascii?Q?GkP7YmvzOzSzDqk9hXkRPhEj9kyAXVuRHg9+oec51WRC41HotLqSiqV8nFq9?= =?us-ascii?Q?ZIzXcOtximp1c5XWwAH5xT/HC9G/q8ZjLdkHWkZVgw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?bUbi0S3peedFKMtk2SQkLcMPv+NuItkicJg2hJU39gWhXaO70uKvBA3xovgf?= =?us-ascii?Q?6F3DrspFmr351CnbDCtIP7bwGIIFr0M1kfM2qy9ijv+0kkB2HqBLy1cL7cqs?= =?us-ascii?Q?kVto3BrUw3+YU0l4byDwKEne2c3bDDljyNH87g2Fo3m9hFSoRFDNCGDmOR7z?= =?us-ascii?Q?4WsH9gHxHzpiepDsGQi5TNXJYgwSKbQhXSIZr08cl3NBx095WAdvpS1zfo3Z?= =?us-ascii?Q?dXkxxgOG60KUE4tTWmOoN41SekkVtzDzQq1nSWHqcwW8tKA/PDq5BIK2jXD3?= =?us-ascii?Q?sUlTzcewXdyqQL+8sgohjO7B17+HvxuHlZs1F4PYtpfPN1/jw5HkSTIPMppT?= =?us-ascii?Q?ABSiu7TyJSJbfXU4n5+NjuwI2kRDrAJ86fc+2OlYbsFUeqvh9th9TEe/Ks0d?= =?us-ascii?Q?8cF3ln2r9W3Df95JHDwxUt+niVOTA9lKA0VMWO2z2jStsXU22nS5T5rv5jlf?= =?us-ascii?Q?a1a7G5QJRs3yc9UtR5PVvuNWQrbif6KnI+jB9x2nT/hwcyGrEOZaB6cCcv9U?= =?us-ascii?Q?r/T9dCCbEwHlMyx4d3xJz8unzOfpx39rSbgzReecaD2Awpgcp1F405HOD3Hs?= =?us-ascii?Q?d5CnJPTAvLcPWhQgXysnKFxA0kZnQaQn100bGD/DdUxPS2QeJAhbe5zNQIhR?= =?us-ascii?Q?0jpq87GjxiWLY3kA69/MwPGTwqRSDl8oYxMwt+Dm/Ti7gW4Z/26Sy3cjLP49?= =?us-ascii?Q?s/FN+9NPa4UiC9GQ0T9/mItFtPfDPjhpoYpJ5fh89LPHCG2eNNJAR/RZb4ii?= =?us-ascii?Q?/padnLQvL3W32l7nawq0OhTZEXIKlUt5KrmVOCNUjilKLw4+BT6mvXbUPh+x?= =?us-ascii?Q?8pvBA0ALq6dAM6miLE0ZzkShWjK1xb+z8b3SWxmCgRBXoh/iiVFYBay0ZNR1?= =?us-ascii?Q?2hZM5LfA/6ZM7h4HqkkxwYT0Fz4NaQ+UCAuLWU8QffVlHFXG/jSWd8hLvZJb?= =?us-ascii?Q?HaYQChu/XvAlsjDonX42hCpWs4XOGOfzA4+Xvz3xMXQ1p2quEOPshmb/li70?= =?us-ascii?Q?gIXCSGLRaxo5zTy+9c25tC9lEX4DFlFHSiYzbSVlsMyQ+yxMPt0c/jNc1p0t?= =?us-ascii?Q?bcEHP6qyXZpffwaul6ByHbWNP5BeV957scVU4YVVLZ638siRTS91zKPZCyIt?= =?us-ascii?Q?uJPjd8wnPy02S7keCKiLt7K+arBvcjf8xOULVSaupDu6A5J19CwwSKK8XI22?= =?us-ascii?Q?DySHRxmr429nJ1xB1fVDgG6s/oHN2F0xwI95DTn7OdVaUmoXgZAZGSjT5CKV?= =?us-ascii?Q?X2MvHR30+67k715xG4qELTYC4dSH5d+X2xvy+bYpxIHIGsDTil0oXJqS0fmo?= =?us-ascii?Q?/I+0X4bhzuzZWk5OInrLupYYPhzj3t6HooppcjsD01KzFAJo+SHgVNTJ4OhT?= =?us-ascii?Q?caSQmZjcNJ3c8RCnI1LbhaDP14oJK7kr74DIaIit5QC6fz2LPWvwOufJ3r78?= =?us-ascii?Q?vC2dqpXxBE5/uTxbMf4hqOZ6vNPwti/Zu/XzSeXTtvbpqbgsN9UL+iCcV3NG?= =?us-ascii?Q?3wzJDsgN5ASa2pGBcUV+SiArxddQcLOS6+nHTdtuYu/mQNQRde7YtcIR3cLK?= =?us-ascii?Q?F3ibYOCn/vnDBzhtjNrlZ5fo+oOWI8vFtaxW/MyUPzaQiP+8SG1fxrXXhwZe?= =?us-ascii?Q?Eg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: S2x8mheloa0r3E0qodfFgStPIHaxptYqjVMXE0muiYrWPYQ7Hk+znJu4LDDp0+QvRPt2Pn1Lc8Xge0W8zirJAFxSoKS0FrR+ebgfAVBcE9JyecJVkvvrESxz6xdzf+rK4Cs528lnQys4ME1hZMOjATYwo1C9z5rIvckpUW083sijNmqBW9e8uIVDqu84rxFBf73nMxxgIOwi8R+q3ET6yI/10OGI/n/4vliI+W9fvoGKQqC2nIFBSUNoAqwU32PxB4vpeiBVeSGS/AAXFbCwJJvQsmR7tjEA1eA0ifPyekTefAtZ6b2vKI9p6KEACpsM6f41sf374clqe+Gwnfkb5TKsekUzxUXGLPNp5WLCOL3JhpLrCX1aMsfrXq0El0M+JAfJk/3SIURNfAeoDf20nV2MEzuAML/g3IaXbdfLhtiShodoJNGqERoogSuztuo3FrFAy/HQ+fDDRF0pNEsxjW8/Zw6NLWTq+j4CPTC5RHwvFJmYnSvULPmFHE0HiT+t9V3JHGX4Ti+XCX7WHwQ8VWPZ5hKirBiF5W26WXb8+FUbBcXxqJUxGxozEvy4LwmulOACVuxzwN6zwSIcCCAemmyy9Xmg4t0Lj0d1SXHcXWg= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c0fbf81a-861d-424c-0551-08dc7eae3db8 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:40.6160 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Prq78Ko0cyviBoRkbF0vdyMKx5QsY1uSw8YoLT1PujeFvJY2OTnyA1mOrwjlNh81Anxi061JS+ZXk596Xq2XMXkblB5cFd0omCSQvZEQGV8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: 5pmUGxdK3pO5T28L4qHVXxjGgt3BqGry X-Proofpoint-ORIG-GUID: 5pmUGxdK3pO5T28L4qHVXxjGgt3BqGry Content-Type: text/plain; charset="utf-8" When updating the task's runtime statistics via update_curr() or entity_tick(), we call resched_curr() to resched if needed. Refactor update_curr() and entity_tick() to only update the stats and deferring any rescheduling needed to task_tick_fair() or update_curr(). Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Suggested-by: Peter Ziljstra Signed-off-by: Ankur Arora --- kernel/sched/fair.c | 54 ++++++++++++++++++++++----------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index c5171c247466..dd34709f294c 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -981,10 +981,10 @@ static void clear_buddies(struct cfs_rq *cfs_rq, stru= ct sched_entity *se); * XXX: strictly: vd_i +=3D N*r_i/w_i such that: vd_i > ve_i * this is probably good enough. */ -static void update_deadline(struct cfs_rq *cfs_rq, struct sched_entity *se) +static bool update_deadline(struct cfs_rq *cfs_rq, struct sched_entity *se) { if ((s64)(se->vruntime - se->deadline) < 0) - return; + return false; =20 /* * For EEVDF the virtual time slope is determined by w_i (iow. @@ -1002,9 +1002,11 @@ static void update_deadline(struct cfs_rq *cfs_rq, s= truct sched_entity *se) * The task has consumed its request, reschedule. */ if (cfs_rq->nr_running > 1) { - resched_curr(rq_of(cfs_rq)); clear_buddies(cfs_rq, se); + return true; } + + return false; } =20 #include "pelt.h" @@ -1159,26 +1161,35 @@ s64 update_curr_common(struct rq *rq) /* * Update the current task's runtime statistics. */ -static void update_curr(struct cfs_rq *cfs_rq) +static bool __update_curr(struct cfs_rq *cfs_rq) { struct sched_entity *curr =3D cfs_rq->curr; s64 delta_exec; + bool resched; =20 if (unlikely(!curr)) - return; + return false; =20 delta_exec =3D update_curr_se(rq_of(cfs_rq), curr); if (unlikely(delta_exec <=3D 0)) - return; + return false; =20 curr->vruntime +=3D calc_delta_fair(delta_exec, curr); - update_deadline(cfs_rq, curr); + resched =3D update_deadline(cfs_rq, curr); update_min_vruntime(cfs_rq); =20 if (entity_is_task(curr)) update_curr_task(task_of(curr), delta_exec); =20 account_cfs_rq_runtime(cfs_rq, delta_exec); + + return resched; +} + +static void update_curr(struct cfs_rq *cfs_rq) +{ + if (__update_curr(cfs_rq)) + resched_curr(rq_of(cfs_rq)); } =20 static void update_curr_fair(struct rq *rq) @@ -5499,13 +5510,13 @@ static void put_prev_entity(struct cfs_rq *cfs_rq, = struct sched_entity *prev) cfs_rq->curr =3D NULL; } =20 -static void -entity_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr, int queued) +static bool +entity_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr) { /* * Update run-time statistics of the 'current'. */ - update_curr(cfs_rq); + bool resched =3D __update_curr(cfs_rq); =20 /* * Ensure that runnable average is periodically updated. @@ -5513,22 +5524,7 @@ entity_tick(struct cfs_rq *cfs_rq, struct sched_enti= ty *curr, int queued) update_load_avg(cfs_rq, curr, UPDATE_TG); update_cfs_group(curr); =20 -#ifdef CONFIG_SCHED_HRTICK - /* - * queued ticks are scheduled to match the slice, so don't bother - * validating it and just reschedule. - */ - if (queued) { - resched_curr(rq_of(cfs_rq)); - return; - } - /* - * don't let the period tick interfere with the hrtick preemption - */ - if (!sched_feat(DOUBLE_TICK) && - hrtimer_active(&rq_of(cfs_rq)->hrtick_timer)) - return; -#endif + return resched; } =20 =20 @@ -12611,12 +12607,16 @@ static void task_tick_fair(struct rq *rq, struct = task_struct *curr, int queued) { struct cfs_rq *cfs_rq; struct sched_entity *se =3D &curr->se; + bool resched =3D false; =20 for_each_sched_entity(se) { cfs_rq =3D cfs_rq_of(se); - entity_tick(cfs_rq, se, queued); + resched |=3D entity_tick(cfs_rq, se); } =20 + if (resched) + resched_curr(rq); + if (static_branch_unlikely(&sched_numa_balancing)) task_tick_numa(rq, curr); =20 --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 9DF0471748 for ; Tue, 28 May 2024 00:37:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856625; cv=fail; b=giWtPjreMr34zXaOrzCaOllMCmLbMI80D34fIo7IvvCGpz2Do6qdD8uAedIzbBj4tqLyql4sk1Ykmax9YhHMwbQxIq4Zj4QqDBeTzbVLR/NtdAmwRSPMbyAXoYLqc/g+VLk+f0D9Gwk6dVASrfTNGrqA3OoA1SOxLe+cCDzoHjU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856625; c=relaxed/simple; bh=CdxlinQAkDAady4M2tqfyOcrUbIp4900EAFo4s6B0P0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=nlIbuuDb5k33KJ8zIl9yTM860wzAxYDkjUVxGyPkaX2ZiLIzA3sOdlwZuPfhk5eaxWbXOKHF7zY8Th23KircqzQ7vaSwIBGbbj6Im/lHGOy3GFxeKjo644K+3dP0jCjs4189wTDjCxljofHe5AvKWMOLuBJ+Vz5V1pM+owuznXc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RMHtHW016708; Tue, 28 May 2024 00:36:46 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D+eDBDW7vZvXIevYO5nkc2avJiv24K8d5DPLgh5fgb5A=3D;_b?= =?UTF-8?Q?=3DZPmGfscA6EZVMnDxqmrzg2v/zK2+jjZ/YRRPxElPfrIrY2yEG/Z+PNp0eNK9?= =?UTF-8?Q?C3VdHp89_arMW+M8jkFtiSnQCbW0twxc9/z4YFBsWCEDXy0NY32hljl4eeBPp4A?= =?UTF-8?Q?BOlaJxXbKtzbDN_gziDAmejxOE5pXsw8RgFivkziWxsH2P8ZINnPxOBXQSZYvyM?= =?UTF-8?Q?qH5Z46ruPu45szC6SYLs_9pS3s4QK7GHBDf/Ps5kaw+arzJ1QmMHEetTF1+rXSK?= =?UTF-8?Q?OOWr1I5YAs9gfTRN9aUorb8UU0_oWp7P5FO4lzCUERf3QWOI3Ifn7ERyHShFkYA?= =?UTF-8?Q?vs9m6XTFwC5nv0QDSJ+5adv9lcRvuAqw_qQ=3D=3D_?= Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8kb37rf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:45 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44S04XNS009374; Tue, 28 May 2024 00:36:45 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2041.outbound.protection.outlook.com [104.47.56.41]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc52agcse-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=J8m5Ohz1SKxfCqr3D22kNaDVOexsV9E+VmnRbJD6/Xqot0iYHrJGBfZMpoPpyey5bHVdeGB9TY2tWmVSKTwtFY+3PNYDQsaiU8wXNSpq6R6NdzjVJXlKUowMcewY7Ar3UOGKIj02UFYcIbcLmc6/j4M6eZtBWtCSFjL8vtHyRSzuCE8y5Eh9yf3jOWKKu7cquaf5gf74gRM5K/G+uoXcWARR3XOpGbV+7Jo+DiMiJktpEEWmxs9CzpL3j406578CjK6NDRXxpsZI9V9EOJHO4+m8+UTh6HKBGia2V0WPj3+CA8HBsuO4ALyKSQjPpCYVimrLKyLGM5Y9GR0bfnIlRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+eDBDW7vZvXIevYO5nkc2avJiv24K8d5DPLgh5fgb5A=; b=hIsBKr2ktLS8HE4pSjmOS+RprgtwtfbMzVdzpvjm7HEx/bKZzItSuApRfF5DbrrjebnmKsBaAMItD9Xmzf64YxVL3XUmPb+RSnjvXNeQCHuO0m1eeM+wzBXu3yJoyq22hEfPFzMas1Qh/JkmkwT/T2Fah+Rne824z1xxqYbQAG5nz1Qh2cBL0Gn3tfrml6WySO5k0hJDo/7vsVhaI6beX7VvnRAXIRlE/vHYaCk/kV8v4+hKKFdn0iTdDb7YIQz99IsywUzemQT+pAH27nC9ImXkPxALpwVKyOeHO9e6+X3/4sMtbQh40GhbBttiG059Hn6WShxJTKTTVkMZTw3RkQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+eDBDW7vZvXIevYO5nkc2avJiv24K8d5DPLgh5fgb5A=; b=qsSJGACxoy39LtT4bYA2gxdeym3AdAjER8UCl5QehUNzCP8Yr4isWQDTtcLJl+PoouurW2st1i9RfrnlgU9nNCeku8/stA4GuRtoXQh5nRslxes6nkY6SfrINZs+GlZo5ju9Z0GofVHYO+Ne/Gk/iqfE0CUEMblGcaDUJ1GhFb0= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:43 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:43 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 26/35] sched/fair: handle tick expiry under lazy preemption Date: Mon, 27 May 2024 17:35:12 -0700 Message-Id: <20240528003521.979836-27-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW3PR05CA0017.namprd05.prod.outlook.com (2603:10b6:303:2b::22) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 8d6ff32f-eba1-453d-d3f1-08dc7eae3f2d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?t7u9j6qGujZN/UXaYXFPIH0JscPpEXTQ/u27Ot/248gCqbLNERsDfSVhtc17?= =?us-ascii?Q?V5ZpaEwr6aedEsXIzs6tg4U5hHEPRjJTpR+yvjiOY/0fT3KOcwt9mD/65dj6?= =?us-ascii?Q?rz9bhaZ6l+e0mkt5glTX1+O1LlDJ7vTI31BFUA+gS5DoiW1LCyr28W0D+P3l?= =?us-ascii?Q?1e7E4k/HLXlRaqLfxpMnxsHzRX7yr6fQUH1BRoVLNNpD5e4qei6FTZFv+a1r?= =?us-ascii?Q?v8n84Ebv74awfh8fTBEphuSZnqgxy1kiXABfQDhphinlMOeVogKn8ucQIDGa?= =?us-ascii?Q?qCHDL/rHjfkGIaSYDAdpk+tyBoldxxziANQkcHrXrsHS//XEwQvkbIZu0496?= =?us-ascii?Q?SPzYH54DiCdo1feSxoFPc19RGh4EZV4ZaCjbCFmdKw9oc3vfLpmOi1sj6L4s?= =?us-ascii?Q?H0rlxW+cY0Gc/N10kABjLv4Nh3BJ8l7voyNlPyVSSGFX+j2UQiFgvjQCoqNf?= =?us-ascii?Q?dwiJBEQYdMExgddIfVI1MKz1KzUp5E7iw0jQ93tE33T+1+g1ZD1kWe2llwcF?= =?us-ascii?Q?UpQh2ZUjXtU/kVa+rcq14iTLAX50zm8QDMa39Uqml0tKxBXuF5Z1eTgt/qYy?= =?us-ascii?Q?4JH6SbotGet9Bn9gqSaMFuwQC/dxrLF+7B2tdm0H8Iizs2/U9WClqx5q30Mc?= =?us-ascii?Q?9sU6lz1Kn/wbmxYIsAOxLYweWvIxswZuR82hqhspQUHgOIYuZu7PVmzYKoNo?= =?us-ascii?Q?BbtihCMKN3Gc4miDZJIKZrxiN6E6hNon2YUbBa+JN9pKOYGwfuVAKAdKevET?= =?us-ascii?Q?eLRuNWszsPH1IdOAo2a1kEJrlNLMr5g2k8sdLczb4yUbUp/2DUVsRNBchPtF?= =?us-ascii?Q?VTFvC+ITgZH9nycws+BXMFiv/K17bvbd7VcOpUzdFIdJPkNWnLGMhn0511Jv?= =?us-ascii?Q?StObnSPMEuny1u5o/nzbaPAO39Z6m5SUH/NF0eBEn+vDlzdOETlNqLp/3+dP?= =?us-ascii?Q?1pOmR2SeZsLybKN6CHjdW0CtVWrhAePz+Vzxgt4v+W6439wYEBsgMYi9RuWD?= =?us-ascii?Q?mmGZ4swXv37k5SZiZ2ecwKTIdqcF4shTHmaLCKEfYTYM8wrTW0Rl6BRmiuJZ?= =?us-ascii?Q?7IMvtWPcgdymDh49KFztEEoUf3tO9wCMi4Iuhe0xrQslG/yQemsI6Qv/ljb0?= =?us-ascii?Q?q4FSiKgoruccnttzKC6YCVZu8tiSR5hZfjEf+69W2YhgT5gJhsz1h3epMQiL?= =?us-ascii?Q?lYHGJlJaVZiZLoXE4LFiUDuBdOZS5V7Wj8qiLg=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Sfs/R3Qr/hcY9PR5whTQHGx4B3/01PnIjnMVXG6/WH1C8ostsKS5xoWGnvPh?= =?us-ascii?Q?oTpU+ghSwLasISBBMj6a2mWAIW9Ym4koUBghWQOtkB4CWSzVxIfadPKxbfjm?= =?us-ascii?Q?tt9zEmMp7/7OAAxfxEMdhIe8639RvAwm0mSXICuEDsxh2MmMbjnarBhchf/B?= =?us-ascii?Q?tf8x0LScpo83QwdKpe9LhUVfbpTM+/6wR2SKrThpsnFXAQ9QDkDsZG2faN1t?= =?us-ascii?Q?YvZb8w7u+qI8GOPeNYMj8wMBTLjESk95dqtEIN175r8m3D8FfOfBSR03RKa1?= =?us-ascii?Q?GGn46peOK3e2vuTwAdJD+Xl7A4IAAgFoLmzUTVdXRjxZQbng2jjYZIvZFU8A?= =?us-ascii?Q?InRkcOgYiDl0L+PGMeTO13g9ndyUzMn2+ur7BB1uFDnYnl1ikOP3Doi2mQ/E?= =?us-ascii?Q?1XvL+7CarGhaiQDIKBJsQCqtl2G5bT+7qRqhO03YfsNHW/eZwWQK1pqW/tWC?= =?us-ascii?Q?bxIzrQfhGHjxaoTwU871+ogVqXdZhQPP0LWbybhmGixPGWivud6RBhRu1zI9?= =?us-ascii?Q?NRV6D8kMuhD7ziM0rXIDljkAhd9eTMkKzlX1UsLyHyVCzAHgmS0leLkr2kgZ?= =?us-ascii?Q?goL+UknZ3msZ+0rcb8O03WeutvYlvcsHa7achM26dJ12SyeH3o/aq/u2FM3M?= =?us-ascii?Q?vDcruZFZzKYhJIjkdWq4/Ryfgm6SKjba/gq4IhU4wwOFTX9vpktadKbnyHXY?= =?us-ascii?Q?58D6+4nRUK67J+Rd4iRr8eZclyOOG/ntTXMstxVOT+VIRcjGy4nzi1o7FvaE?= =?us-ascii?Q?n4Ll/znz+WJxV/buIt8y92WMEl5SCxHNTJcHujSJ/am2o50fkA5/RRYRQvRc?= =?us-ascii?Q?kQ4vHGs8TuFE43f1ZpMv5zGz2TzuDSxD5bMOFCOHBA/XPqn3vXvew7TAUHjJ?= =?us-ascii?Q?5jtmeKo5/mSqrVyxC/hSMg2ivX20dyyyJUUQ4zXvS0jZQpDwJVzjIICyqUHk?= =?us-ascii?Q?sB61vuMBHBikud8H9lChM7xW4bqHcrP05CurPZltKdibSxQdstOl/uGHl9oQ?= =?us-ascii?Q?hWm3EqK24AvCfLwsEusNQGGVcKCrlxa1CdSa5X+rRw0fTUf1mz97bW9woBBJ?= =?us-ascii?Q?r6O/Nw2+CTmB6CrrA/CGwY2SQBkIimHG9B3MSvioQbEvZ04NUc+TzpfsaLY/?= =?us-ascii?Q?B0PE5zPjSUNZOFotDngtVumjpGVBwyEG8VJkr+piNlCV9sAwJGVfAtZs3rp7?= =?us-ascii?Q?E6fw3aG8fqUv6y8gvXNj0qu4LriJIaoPpBQzqlBDHetBXA9SFeB02Wmo8kjJ?= =?us-ascii?Q?M0XgGKNlxh6ZyiB4fCZFN6y8FYt61J/ZLbLATxeqGMH+eJicQ9o+uKJZSYNZ?= =?us-ascii?Q?ufmsczsYJ036WpBRUds0xxC6e1gqas2uG5fHeHoIfguBfafBU1Kyum0GhSnP?= =?us-ascii?Q?4GM9aiE5oXPt0J/WYMWF2UDQOsWuWZZ712YyH/V9E8vwPTcKZO/3eNPlt0Ov?= =?us-ascii?Q?bLFqWGALFkJbMwvY2KYUUe2hpCJ1TTMFNt17sez9vw+bDV4ZMt9UoPPQVYKm?= =?us-ascii?Q?bpYt1XS38Vh0if83AaUm6bUrdwxX2SGR+n4D2GYqcSOHS/kef0fh7eKl4T4x?= =?us-ascii?Q?zlCfauFPc+R+vrdtN8QuhPm4dLSc/K+UPSfVYcSSOX1aJCvS/7xR5H3hwcFO?= =?us-ascii?Q?rw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: K7vNHAT0neQdREjn5oqEEQfrCKVruiJWqpl0yRmlJ/X5l88LZUX9uO3ifXjDkbPFi+lIAE8xwlo1ut2KLu8tD2nnvz3mEQVwkKHENq64wQkUSwHrm7UpPoGh1ZZ5/qq21B0C+GlGhUxQBDUfxcJSJi48SZg5iMWiB8Ayu4dlZ+Y+JZmFbT3zmq6t8UMAwn6X99BOEigjeLgUYKdlBle5i8HdrjVF5mMF1UFzdqfZKEZcY0W+mKdFIs7b2UVnBsdgdEz+mFS7Um/hsxCaNsylMH5hfsY4cXpmcyXQONgCUmlAl2LSLDTa1dYnhuobE+vDsvAWzYhCpLiyIRDfe2RYKzbJRYbLMwrS0Y3AlQiLb7G3BFsGeCLzmqm/oqW6nMNU/w++4HDQ7oEKekqS6YoMRN929g2464Ouk8qt9NAIrWP2ndsZlPyPFg94ULCN2Cjasn8SSzS2ZGZg5ezpg7EA2JhdNsELslR70QTph1/JVyoC6/CoKkUVWtiBCR4laSGYj77uLEHaR7PYOkwFLkFlbgu0A8PnezTwXF2hh+gvTWiG4+V2cTBZcgS7q9QelR03S/8g+fOw3emlVOUjqaCQyhL72yjcubEfC5gDE+zqyvY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d6ff32f-eba1-453d-d3f1-08dc7eae3f2d X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:43.0166 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sjGLaMyfYGrQ14ieI6ljkyHuod1XUGl2pdytUaIGDgLXCPVD+OzTiNp1sPoAXdeDhQkP1GsD+Msy1PTj3c9iU/7gg2Wwr/+AxJgzVvWBOvk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 mlxscore=0 mlxlogscore=999 phishscore=0 spamscore=0 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: 9mdEMb6iCce4B2VL2XVt_-MHF0djy8XD X-Proofpoint-ORIG-GUID: 9mdEMb6iCce4B2VL2XVt_-MHF0djy8XD Content-Type: text/plain; charset="utf-8" The default policy for lazy scheduling is to schedule in exit-to-user. So, we do that for all but deadline tasks. For deadline tasks once a task is not leftmost, force it to be scheduled away. Always scheduling lazily, however, runs into the 'hog' problem -- the target task might be running in the kernel and might not relinquish CPU on its own. Handle that by upgrading the ignored tif_resched(RESCHED_LAZY) bit to tif_resched(RESCHED_NOW) at the next tick. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 8 ++++++++ kernel/sched/deadline.c | 5 ++++- kernel/sched/fair.c | 2 +- kernel/sched/rt.c | 2 +- kernel/sched/sched.h | 6 ++++++ 5 files changed, 20 insertions(+), 3 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index e838328d93d1..2bc7f636267d 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1051,6 +1051,14 @@ static resched_t resched_opt_translate(struct task_s= truct *curr, if (is_idle_task(curr)) return RESCHED_NOW; =20 + if (opt =3D=3D RESCHED_TICK && + unlikely(__test_tsk_need_resched(curr, RESCHED_LAZY))) + /* + * If the task hasn't switched away by the second tick, + * force it away by upgrading to TIF_NEED_RESCHED. + */ + return RESCHED_NOW; + return RESCHED_LAZY; } =20 diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c index d24d6bfee293..cb0dd77508b1 100644 --- a/kernel/sched/deadline.c +++ b/kernel/sched/deadline.c @@ -1378,8 +1378,11 @@ static void update_curr_dl_se(struct rq *rq, struct = sched_dl_entity *dl_se, s64 enqueue_task_dl(rq, dl_task_of(dl_se), ENQUEUE_REPLENISH); } =20 + /* + * We are not leftmost anymore. Reschedule straight away. + */ if (!is_leftmost(dl_se, &rq->dl)) - resched_curr(rq); + __resched_curr(rq, RESCHED_FORCE); } =20 /* diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index dd34709f294c..faa6afe0af0d 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -12615,7 +12615,7 @@ static void task_tick_fair(struct rq *rq, struct ta= sk_struct *curr, int queued) } =20 if (resched) - resched_curr(rq); + resched_curr_tick(rq); =20 if (static_branch_unlikely(&sched_numa_balancing)) task_tick_numa(rq, curr); diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index f0a6c9bb890b..4713783bbdef 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -1023,7 +1023,7 @@ static void update_curr_rt(struct rq *rq) rt_rq->rt_time +=3D delta_exec; exceeded =3D sched_rt_runtime_exceeded(rt_rq); if (exceeded) - resched_curr(rq); + resched_curr_tick(rq); raw_spin_unlock(&rt_rq->rt_runtime_lock); if (exceeded) do_start_rt_bandwidth(sched_rt_bandwidth(rt_rq)); diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index e5e4747fbef2..107c5fc2b7bb 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2467,6 +2467,7 @@ extern void reweight_task(struct task_struct *p, int = prio); enum resched_opt { RESCHED_DEFAULT, RESCHED_FORCE, + RESCHED_TICK, }; =20 extern void __resched_curr(struct rq *rq, enum resched_opt opt); @@ -2476,6 +2477,11 @@ static inline void resched_curr(struct rq *rq) __resched_curr(rq, RESCHED_DEFAULT); } =20 +static inline void resched_curr_tick(struct rq *rq) +{ + __resched_curr(rq, RESCHED_TICK); +} + extern void resched_cpu(int cpu); =20 extern struct rt_bandwidth def_rt_bandwidth; --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 B67FF6F08E for ; Tue, 28 May 2024 00:37:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856630; cv=fail; b=c5kMvigwyAk7fFeekbNFQZuutuIHy2EhsEKbVNvcS6hjTNVq4aMfYfr3Vz0kfvnVCDTpvwO0xcNYiJjJG8btj7QW2VWyPX/qedIxD8QsM8fK8D7mh9iomJVn9jUWOAUDsnK8jPqoi+Ojceeqljvm8du56ONXBjbx1VSstIh3UR0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856630; c=relaxed/simple; bh=hXHkzwWWOUuAqPF0DyTa+EsHAXTodmn+MHLeM+Ijy3Q=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=pifLk1Hpv9nDYjvhY7PjgirKE4q7zY9AfELBLCDIN6Xddo6mjGO8BEy1ffpy36ryapgTMtPMJB7dumULm8dGjo4x6ulb6udc5WD1PqQaJZ/YdJYNZJkoz3l7NeEKuudAqsooxysQR/iajxfG7HEjowpC7zM6Cfi1zCqr2SdpTp8= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44REO8XC025939; Tue, 28 May 2024 00:36:50 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DJMn2ecYYBoWtIlbNIVynYrtc9Wkxo+prgoaPHIFnEv0=3D;_b?= =?UTF-8?Q?=3DYe05VhHSXLQSeB6LBeY2zQ9OPa0K23e9l1Ep8Ab9qPqy1YhUtI5iuNqJUeEj?= =?UTF-8?Q?rAHpfWNb_h5pKEWGJZt4nyjzagVsNzX4N6XtuxzboBSu6npb2mvaZyTl2ygFiHK?= =?UTF-8?Q?378IWzcfPh9342_IF5WuLF4wJgkyIQY1rMC1QmuDymngViOo7KQKfdrP7tFH8WP?= =?UTF-8?Q?rhY75bLvrbx/3NTshcF4_VadYmQ/iwj8Qwj5jAhIJUcprPUDXyYWnSlHwge7IQN?= =?UTF-8?Q?0MXL9Fq6Y/PxPrnVuC7tSoB9nr_GjDN+tiVkBXYoqn9dp4saQfAgcZspjhyKVmm?= =?UTF-8?Q?gqJdOGK2bzLiXzTWrjR4otZ3yjGUjn46_4g=3D=3D_?= Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8kb37rh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:50 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RL5YJc037288; Tue, 28 May 2024 00:36:49 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2169.outbound.protection.outlook.com [104.47.55.169]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc534rdy3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CgEtQVuFinjhiKNyWipzw3BteK8MYQitp5s8ljQsd5xqwF6HY4ozZfl9KZaXXqAHwkwGhMNIlb6xMVtaRPlHqnZtKNEOY4bIBtMAgmNuORahpOFGj1apV52uS3DiNFqIMTVvKrhQihTtVcctmIACVIFFNhCbUQ42L1wwss+iB0ldWHOVES/vf3E1roqhq14G9loViORqXPHShC+X+d16p9i8TVWZagz537PmIvBBWeQ4JxK9gBx1ufpqHcWi/ttWPKso8WRqTVvbziq+jNpvOvDv8D124T43D6nIMGqoAMxV6nDb967+iLvUIoHCgmDpHgD2q5hVAQYuzifLszJQNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JMn2ecYYBoWtIlbNIVynYrtc9Wkxo+prgoaPHIFnEv0=; b=OWxj4TIDSmMMrA21Z9r4yIcSJ4jRDfD70kKObYJvfblBzJcFcWabb03F5lHRIPwSES5N1NsaYTom6aUL1+0z20Ug9UiwXWhfJ6X6NIVZtHM1+x3kllKn/FJ2Wl5Y46q/3eJkSgRAZGcp1oj97sVJSBQkEfcvhaW+SZLBoiwEi7SgUshae2pZix2BSTKvY6HWdQ52YSCWn6YEXhUaHs++dR+ZQUXkTnYGTqWMT8DPQ3lEJ/u9D5PjsjQJVqp0S7V3F4YuoaO3EEueP3p9I76ieLTYfr+KEct9NvNBm2nP3Q/UuqMHk+Bu0BOmR5V2Zc90Fc2lbE6icGWB4/IoUv4uEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JMn2ecYYBoWtIlbNIVynYrtc9Wkxo+prgoaPHIFnEv0=; b=r87R9hXTp1gsC2u8f3YFaftK5GtLqI1dfHl6v3ptqBDwuRLyiz0a0ExLKhfUF2XEXXDfyOiFkoXvnWWclhZ0hpOD5WBljoGUopwc9WzcmPAwGBKa/JqD71KtlLybRUgtTIy/6JyDvwte+R6sbhQTMDSli/jYU+ypAwCJby9sIv8= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:47 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:47 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 27/35] sched: support preempt=none under PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:13 -0700 Message-Id: <20240528003521.979836-28-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0233.namprd04.prod.outlook.com (2603:10b6:303:87::28) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: ec331fbe-be2e-4bb1-c293-08dc7eae41f0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?fu1zVSJL0z185NBgtEWNJFTpigkIyG+Vj0pN2YD7iSVUNP85n5Drt9UL83Bu?= =?us-ascii?Q?obTgxE+5Dtq0bkMOE+V1JskRUXvoY3tljsHCUxugEQhbn8mMm1/DYk7uYGzL?= =?us-ascii?Q?urIZuFQVJ28x8RMQn5IX6+F15M1S6lpRHbnEEBoaVipuYVdyS+sSCDoYxGNH?= =?us-ascii?Q?Zwfh8ODe9jg7od/4XhWXT8J3Bytva4JY+BbuA8bd2TQfDlueMWi+pP9QyqIK?= =?us-ascii?Q?ejuZixJ58P42Ttfn4gSouLqbCym/fYqvB9uFRh4oW2CfuCgrQLv5agFjl0Oa?= =?us-ascii?Q?kHRUdUb3xxM1qS3ost+Umihf6JE/Eh3JPtcKgDb5ZEC0X2V0ZqyDl3YP2FjX?= =?us-ascii?Q?h2dmP0cvzEBqQUg+RiZvyr+16X8KebAQlk3t7IN4fyBgXZ0hSGOh30GQi1Br?= =?us-ascii?Q?uh/zFl3F1yDv0l5HJeCdeSONvSlsHFBn7tKmIl9FfaJEu6Scxlgm/d0zE2ld?= =?us-ascii?Q?zMUz33gDkIdJeXzBU9nJoDr8//S4PKpVyQWwS35P1sYDssEJoJIpjDuSOqE9?= =?us-ascii?Q?zeRpdzuGJ2hm+9MnIKcY0czQ4WLXO/9LSPMyTdLbNWOaYOSKC0T76VOeUfAc?= =?us-ascii?Q?3ZKAizEYP27PQs/B4pY7T9T5fpxFpT7aOl+Zcj3Yb/75Tnt4ZJ9h8SJRLLAD?= =?us-ascii?Q?w0lEc58SlLiaLRbZRmUI8plEuNS/s2t/mMBfZJMqBUSFD421Jj/p4DDFxnLO?= =?us-ascii?Q?mnvvKA0H6ATybmISoW4OcI1R9mNa/WumQgDlRzAqcPKDcLuq9uZdjLb3Pjsp?= =?us-ascii?Q?fU1uo0EvSTVLVq1hyy8VY15nGfvz2EpkPz/8KL/mIkbSU9eTJWk8ldVL8Wu/?= =?us-ascii?Q?4/5zW3TtPdTlXrYjYWw4HvFseBfxYwPwW2zoyAE/HeRHd3AN/0a+xGr0Q1Qu?= =?us-ascii?Q?tPEwDbLM5omSDwXfdDgFrdaGVmo2iA/+xx2s77gtLlG5lT2tNvOg6TjTYRa9?= =?us-ascii?Q?CQZrPphiRj6+AXXKdKULjt7gIk4Rvsn6jH2X3XYIAYf/0MhsJ7M4Jm1XtgqB?= =?us-ascii?Q?z7zPnFryQAa0lwCppbw4uIpMNx0aGxltPw70i+PDB9HYk+WQAxRPQmDGQ9CG?= =?us-ascii?Q?3YeGgzmcMoS8Sh1I8hrlnJWeGdyJWZjlkcxErbCVV46XNZWZkHpynDEXiJvJ?= =?us-ascii?Q?dvTdfcc2zXQMztMXVhU1vqbzzJF88O+sOLhZX/rMqwg1hB+62jJx79mGBlPt?= =?us-ascii?Q?vuJ3ABPusoCLqkPVEhyJFVqKTkR+yGEMWwz59g=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uvODp1dGEtgPYAvbJ/XrB6Rd3A8y1WngNW2PmxHMmzyTMxw4TA+vrsYNf/Kc?= =?us-ascii?Q?n9rPehDILyDbl0Nhn4Jd7Spbl7qUxq00Phycd5Z+eC56q6my/0gyxzzzf5bC?= =?us-ascii?Q?5EDkWM8s/ke/fYTkS5fB1kHsw9rpQ9dgkMGSSCc8oiFCK7G6cXrlzrf7ZJT6?= =?us-ascii?Q?++voxryM+nuWRX5fDxByt9QRHck5EVQkwmn/XxL4aVUacFptzsfILLSAsqKB?= =?us-ascii?Q?EO7+4v4LDKSSlyi8nnSn/qK6zxZ2bQ9XlF5mgiPtVJWuzv0MdWoZnSUHcD5a?= =?us-ascii?Q?w5Et/UUUdIUGfekEfB/yfS9trcXdsFuGX+bF0wQahK64oMBV19rlbk8Ase6x?= =?us-ascii?Q?AObH2oD0dKE/0Kc5GljTB/3DVPdORU3xG3rTwhURZUaRYEoQ3RVNX5ykVG5p?= =?us-ascii?Q?avQ36r/EG91JDsDEw/KXctjo1ragBWfnnxdownqPNs8cVY2LSehvuAGHAblL?= =?us-ascii?Q?H7KHoDdcri7ooBOhdUFBJmHlymMhP2Nizr87cbShRig8Ewpvy60IooD2EPyv?= =?us-ascii?Q?vBb7KANEbB15X3DY8rTIX/1OjuxFOTQdgYboUaXCbOExgDgT5k36vkdOieMi?= =?us-ascii?Q?mVGQy6I6XnS1qH6nf74mVmnqlVVJnlTP6Wdj4ZmFlpZ0gQdsx6HoRxA3I4Xm?= =?us-ascii?Q?5JO7xFb/fn+xPdCuq6ajfPvbZGrnTW8Y2i3KSN6phajvr7J1KU50wlDd/wB5?= =?us-ascii?Q?c4Tq6s8cSSmHHD2H4vV2TRwKdv/7hqwF92SAe8H4zFaD3KWdEi6ehUBwJNnZ?= =?us-ascii?Q?Wn8f6KxtLFcIMMSVlZAZM0kVF8PI6uKNDsoFR8ZxGc3d7CqzomlYC+hBCNh7?= =?us-ascii?Q?0ZrQ1HISlMP8d/ohlxs8xAjyEdZHeBgOkstyLMgEx7RawYNLjBjeknOrvrnc?= =?us-ascii?Q?mdr21DbDdagyKxmvMwJTkCe9ETICjtyc0Au33RULR327/6ibMMkOA/QGb457?= =?us-ascii?Q?TA+uW3YmIAzCjif9LVFZGrWEExVQlFFjqq5Y6nwFBgqZgVcR7dpNLugx5JdD?= =?us-ascii?Q?psDFDEc6VRBg003sbUYnKUQUQJiXvqAOo488XaoTopfnWGHWWbWtHcsFWxSL?= =?us-ascii?Q?DS1evS5ZiK3sPCU+3PbjNw98/eAIYKyQ8kumB3ndaasPnHlMkD2M5DTsK31X?= =?us-ascii?Q?mpvFvVxwv78gAeXBAZ01moXLwFe53U3t8Nkk7hFHwe8f3FqrZ6A5rxR2pHG7?= =?us-ascii?Q?WJVIBndKR0RWBOeElQCmVaym3wZd5uZpsdPjOIaM+2ZpJK//CIdik04BGoDT?= =?us-ascii?Q?GlyFF9+py5P2jC3i9lIOn4yW4IbVpusSVG6tkqD0zaBm4R22VZxGd5Y0Zd+I?= =?us-ascii?Q?BC1eSF9iqewlGTZFlseH7a37GwVNK59cFxZk9b/qnLN9FQsiT/+VoOzd+1iV?= =?us-ascii?Q?jPEcyp05Durvt8OE+9ARPVB68L8V9z4H/SN+8lehVE1rwZGDIlhdixyHdqjm?= =?us-ascii?Q?b4mUGo9wYWwEBiRE1qhI5UT8BqfNtKp6EXrzmNfOyF1my+j8zVkQkD91NBuD?= =?us-ascii?Q?k5p67xhRcGGGXej0m6MTyOUbW0UZBHGgkSpXtDkKDRLyq75mUOs85aUpoxRn?= =?us-ascii?Q?euaafhNn7LJPYOyJLUAjuOqNve+kNf0omcyb+Dikf84XOel9DfVZBkQ5qtbn?= =?us-ascii?Q?Mg=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: URn4w6lNTUszi5N4/XB1QQhY1S8uAChdmUSnnGQTlGHghY6CgcOFr8ixNeO7MQbPc4jUCkefr3oLVtkz7Y0wtnonow9SiDpilejU8GLeZyXiToQp9JzcinjewXpxS3pfnrcleeHv0O6TF8PDkfDz92a2gk8VrWUgN/3yYfZCNzp2YiWd2VZeroMz8gMBBjyk+/vcfzeYwbGKq6DHnp/lLoDILVemY4+9zJiFPwV6etja3lIA4tQRfn42TxT8zjZUc53QuvgHkSF7Ed7kFr1403Qo0N6BzIz7sLvHRseqzpFigWwQjUHv4cY8sDv7f9ZDBC9Kd8Lr9A+eSHbj2IkEgJBTobwQjMfzz7rtfZdf0Y5DnMWuN8wbJ4F/3tyb4UPNwwqcUOsfDO1IH0i0J4y4ew+eETTbw1EnOA7/gSy+ZFRbWjA8plWJ8j30gV7RjRpqX9K4ryAldIRbBZrlwCuQ29+DapGgeTTSDzDn/K5uqUpK9fF96tEnbOrjiMHCwp304lYf/ufCtf7BihxWuIpAcrm00tvxzIfQWZO0qR+g5xiIToFrAQrc9I7Y5laqFSP4cljjrY1UCGL+jdJcaT2VLYjs3XpHKy2dTqBuqxBNKG0= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ec331fbe-be2e-4bb1-c293-08dc7eae41f0 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:47.6857 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: b+cWVn8aGU2d3GeFTKI66FUoK/sLq8uTHCyQn60If0aZ1PvAG/W+v/A7W/5F4t4cyaLRHMpYRewaO3XHFkVHFq5N6fIJatEXHkz4yJOCtlQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: slSKCrZ9TwzEFCoomCc9P_MakVGV_Go0 X-Proofpoint-ORIG-GUID: slSKCrZ9TwzEFCoomCc9P_MakVGV_Go0 Content-Type: text/plain; charset="utf-8" The default preemption policy for the no forced preemption model under PREEMPT_AUTO is to always schedule lazily for well-behaved, non-idle tasks, preempting at exit-to-user. We already have that, so enable it. Comparing a scheduling/IPC workload: # perf stat -a -e cs --repeat 10 -- perf bench sched messaging -g 20 -t -= l 5000 PREEMPT_AUTO, preempt=3Dnone 3,173,961 context-switches ( +- 0.60% ) 3.03058 +- 0.00621 seconds time elapsed ( +- 0.20% ) PREEMPT_DYNAMIC, preempt=3Dnone 2,942,664 context-switches ( +- 0.49% ) 3.18924 +- 0.00483 seconds time elapsed ( +- 0.15% ) Both perform similarly, but we incur a slightly higher number of context-switches with PREEMPT_AUTO. Drilling down we see that both voluntary and involuntary context-switches are higher for this test: PREEMPT_AUTO, preempt=3Dnone 2286219.90 +- 39510.80 voluntary context-switches ( +- 1.72% ) 887741.80 +- 20137.63 involuntary context-switches ( +- 2.26% ) PREEMPT_DYNAMIC, preempt=3Dnone 2125750.40 +- 29593.55 voluntary context-switches ( +- 1.39% ) 816914.20 +- 13723.46 involuntary context-switches ( +- 1.67% ) Assuming voluntary context-switches due to explicit blocking are similar, we expect that PREEMPT_AUTO will incur larger context switches at exit-to-user (counted as voluntary) since that is its default rescheduling point. Involuntary context-switches, under PREEMPT_AUTO are seen when a task has exceeded its time quanta by a tick. Under PREEMPT_DYNAMIC, these are incurred when a task needs to be rescheduled and then encounters a cond_resched(). So, these two numbers aren't directly comparable. Comparing a kernbench workload: # Half load (-j 32) PREEMPT_AUTO PREEMPT_DYN= AMIC wall 74.41 +- 0.45 ( +- 0.60% ) 74.20 +- 0.33 = sec ( +- 0.45% ) utime 1419.78 +- 2.04 ( +- 0.14% ) 1416.40 +- 6.07 = sec ( +- 0.42% ) stime 247.70 +- 0.88 ( +- 0.35% ) 246.23 +- 1.20 = sec ( +- 0.49% ) %cpu 2240.20 +- 16.03 ( +- 0.71% ) 2240.20 +- 19.34 = ( +- 0.86% ) inv-csw 13056.00 +- 427.58 ( +- 3.27% ) 18750.60 +- 771.21 = ( +- 4.11% ) vol-csw 191000.00 +- 1623.25 ( +- 0.84% ) 182857.00 +- 2373.12 = ( +- 1.29% ) The runtimes are basically identical for both of these. Voluntary context switches, as above (and in the optimal, maximal runs below), are higher. Which as mentioned above, does add up. However, unlike the sched-messaging workload, the involuntary context-switches are generally lower (also true for the optimal, maximal runs.) One reason for that might be that kbuild spends ~20% time executing in the kernel, while sched-messaging spends ~95% time in the kernel. Which means a greater likelihood of being preempted due to exceeding its time quanta. Cc: Ingo Molnar Cc: Juri Lelli Cc: Vincent Guittot Cc: Peter Ziljstra Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 2bc7f636267d..c3ba33c77053 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8983,7 +8983,9 @@ static void __sched_dynamic_update(int mode) { switch (mode) { case preempt_dynamic_none: - preempt_dynamic_mode =3D preempt_dynamic_undefined; + if (mode !=3D preempt_dynamic_mode) + pr_info("%s: none\n", PREEMPT_MODE); + preempt_dynamic_mode =3D mode; break; =20 case preempt_dynamic_voluntary: --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 D406A13AD0D for ; Tue, 28 May 2024 00:37:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856633; cv=fail; b=rPh9g5PhN+QpqCuhFQnvrDoxE86sQG3FkusHwAUtMdk90BXETkzqpOAHEIYUsMJBI8SOXtmPZhWRLSoD9SUb/isLsqWyrDX4SjeMX9mw/R/f/BGDYjVfKz3SVNwpSWJGe3g/iTKC6srCptgtQ1j7LKh8srfGmkBiyPi0YB/QVBY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856633; c=relaxed/simple; bh=4f7Wrdvlqn1/8INX0XUMAND8jLsaOBACNIxviTcmgxE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=f0EU7hZ1NxtVi2t1K4owxKfNgyCTj3XyEyO6ysQ07KDinhk2OY/abG4156bxtDZHogJ+Wvg6LB3lhc/D7/VbEhj6Qi92Drokck/XicJtOqSvMWm6fH7+//KZY1yKsjnjrU3pX1tEhM3l3U5UO5RKPBBYdazDQuOS6gv0/fDu5LI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDIL7c009387; Tue, 28 May 2024 00:36:53 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3Djmqja/RRDo3IDDXmUsLEFdPt0nJfRM38Y5LiAvc/Is8=3D;_b?= =?UTF-8?Q?=3DOKUszXKKuG3w9gqmHV0TcfVCa20PNJic8LIoSEx6mWulkEWwwck5YsvvHqa4?= =?UTF-8?Q?KFx0EXK4_zpq0gbRyYAKt+CpVRZjYkNulmLVyjD9Ofrp5zvoWmd7o2vHbYLz648?= =?UTF-8?Q?B+5z3UuhgLEZyf_CFtZGpMRETpgU3GQQ467ueIzZjXdzuXjI+0eiSM+EBVBqjgE?= =?UTF-8?Q?YQpGX0EqHuUDpdafdiP6_DTmGq83zVRNpz0Uqxcueky1Mi6F45qNFBcC/MXyzcJ?= =?UTF-8?Q?9+O4FLPOtp56jTQS+hq0gzdQi0_qu8jBAwUI/zyq5QPIZfyFZBRh5iOTWX9nJwk?= =?UTF-8?Q?ggxuxvIGhX7WYJL0c96++qe/9UqButQA_vA=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g439km-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:53 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RME2PC016172; Tue, 28 May 2024 00:36:52 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2168.outbound.protection.outlook.com [104.47.55.168]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtgb2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BcWjoj7Nv/R4Nqym1/OBzGdpCFudBGIehEhG1V/6VcYut3xG8eiLBqX1vvbN+IBvVqY8xAmJn41d9Dd/7BJjkGmEH0gGXO0v1ptYjRo1s8BeP4HqsGvfg3koA/QXMP+87xRp9mHwLWiI90BwS8U0EbWLvZ6qzgW43PlA6ZIJTJW+o4C1j0BP/9iJEYFSajpN0tq0ZM7WE8t1avyzDbz2BImjHww1WHyMyqRR5tF1b5y0gI5e+1H2C7G9RjyRCmgwKACdIVemHZSIiuhWfEDh+CKDirn0cU544Hs+MhXgTDDrjEwVBheGaRkFmOl4kjPYBtZzzI3Gj+WflDZmnXm1jA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jmqja/RRDo3IDDXmUsLEFdPt0nJfRM38Y5LiAvc/Is8=; b=ajsOxU43FK7VROeQpfpIyIQ4PnKNdhYPOTNZ9CDvWvpCpZVnYmHRn6n+4jTfYxUMQ8UCs5XFfNcnL0EtdplHA1pRGBfT0FloIy7Y+2nDXvrHs99NmHLJRRQ9LNrNxEzvVnGcf5GGfinyzWJWiGIsd8oHigp64omdyI0gVzX0QlCf/LbYqvpxnAeJNVekykfZaVGCND1LXumYS0RCF/Mkq45VTQBxdLwM/Mk7lEwup0SA0fhKODz+ZWoIG6Qp93J2/C5a1xOnFlUnu/2LmzH1hQUznOVcQ2MZsAPqD2s3XdeDwj2pQL9pGgDpGJPTeWAqrduvwPbp8cgOJI+ZeTsymQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jmqja/RRDo3IDDXmUsLEFdPt0nJfRM38Y5LiAvc/Is8=; b=Wofc0gZtFG+aXdMa19CmPszk0WRy3+E3HMquFr9vNZOsnmTvUerDV+zUoKpKIX3xrTGPXuiBTc5ggfpbI1Qd1U04OVfFh7x5HPh7t4XjetVXAE35dMIg/QYXiPjWlE1gsORwerTJ3sqAUAD77/pAB5KxRYI+JRu7Sk9SUClAqtQ= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:49 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:49 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 28/35] sched: support preempt=full under PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:14 -0700 Message-Id: <20240528003521.979836-29-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4P221CA0022.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::27) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: ab5ab480-b927-43c9-7954-08dc7eae4316 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?1jLC72R238iKdubFE/r9O+96ScAL1gC83WFU7/Q86dicVw74RT/HfZZ/opJq?= =?us-ascii?Q?x/HOKPOKctYAbBcgAmS88xoyaJ8wZlzt/PmbCIT6nuzaQixFwJOCA9YBVV/z?= =?us-ascii?Q?G2a8XkPAl3+5/NKnIMV1thiyEMoEjEUk67qFghCg1GA7bykey3c8flvOXq6S?= =?us-ascii?Q?ne5dNJjKc+ztqxbVPivWGQrt2mDeFyVGJf7h47X7JxRM2twraFAhRL/LxZWh?= =?us-ascii?Q?L1OZzagEegbO2aErQYSCN7LuGNsXH3YNJ9TvQT36LdaIaVrHzILLv4bRNOPJ?= =?us-ascii?Q?tMELIYQ+LadA/D6iBKbvdNSDGqIx5Qf551ThDQJMLW15iPV4JiUkQPLvR/ZB?= =?us-ascii?Q?zrB+eaq2AHD9RO1gvGlvYuc7rhUqarVv+HQFkK8JR+Q2WUwYGfRYnidT2vsZ?= =?us-ascii?Q?qe2/3riBe56AyTPiCY4jE9W8fE4+H0WS1S+aMUh7f42pVN0jl1SIceqhoSrL?= =?us-ascii?Q?WuojogVJoWcIH2DwwFYCbbTnu+EEvAM9KM+z+03PgzPl9YPYx7K5YkK0HS5W?= =?us-ascii?Q?Bzs705SnoqGJJc8Jk6eJU+nVLu4xCtul9tnJz1nt7K48hJxPqLNGlSeAvbvd?= =?us-ascii?Q?qI8GISfV2KIwWxouTW/bHKxH4uaN+3UNA7ZAgmST3aQ1eaExs2NG/in2+nLp?= =?us-ascii?Q?TSP8Fp8ASxPfZAiekTxr3i9B+Pogn97yJKroP08m1/AzuDE9oUlnBC76PHw1?= =?us-ascii?Q?+bBfWpnwgLygmPD2NHxzFvi9q2zN9yhCKb0bOazS5Lioadxr2F1rHrXkG5rz?= =?us-ascii?Q?JjQ6wnBGb5nTpDsyCTo5l5b7fZ87bLEMvpYuEYtdfsPpibUTmAcz1Qu7D51p?= =?us-ascii?Q?BK9S9bbdVz2//MgEMmltKzaq2sNvMo9D5fJBpiPzHfWkQeB1GP40xyuDMGA3?= =?us-ascii?Q?L+v2bymgZ6FhITQVmd3nWiBOiHfZmgB3ZUhqCSEw95Cuy2DhL1bD+AhTGzBv?= =?us-ascii?Q?aK4f9yUGJkJbdP6LZDnMnizBKgyzXQsQ6JlruNU7cnYBrJjbglXxxiaueFRb?= =?us-ascii?Q?ntYupFMaSCJBvoYG4SbJ12Bfuk/+TKBaeWnyUkvGNKUVGCh2zSEoLJzOWqF8?= =?us-ascii?Q?sAlbwENjopOqQ1+iZ0/vjPhYzhuGFcM+vw8aXUcCvh8I1Q/yzhEGbqZIcgSZ?= =?us-ascii?Q?jOOWuXaUCeW7U5nCF3omNguyAfcT3xmKE/nxaKBSCldaMhCKlH4lHcwpcoRK?= =?us-ascii?Q?vw2GHMq9VQc+ccySmT3A9Fyg9luXHXdtkPiCow=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?GCnq7nuBMeYI/hsb3ErhsnQDXUZVOVq+7BwN18ClwXqO7UVrNl6W+xuUrZCT?= =?us-ascii?Q?PPTp92Axabv2IR5ISGA3A6QH8DK/FiDnqrOBHWtZTAk40yQNYhTJHzXUmFvH?= =?us-ascii?Q?bH6SRhc7L/4qfFXtQG1enYrKvXhbExVmF4LRAyTtUbzhRA5MQp1smS8y9dND?= =?us-ascii?Q?AydxrrJQvYMDfEvvD+MvpGs3po7uR6BTkIvzvkzhPHc1fewHYO4BnDaIPrky?= =?us-ascii?Q?4ogt7EUmOJJh98sfHrfPiEX5yreCmcvE0FCjbbtClnFJehU11BaXQI3wMFkK?= =?us-ascii?Q?Mx0HWMtLMibdn50Q0K0NguzoaDLypHcG8QjQG67W2u7bZQaP9iSg6lwtsS6H?= =?us-ascii?Q?XEzLZjJKyQZUT74sepQMPBn5Wgn6uSYpp0+AKx0D4uYqAjZYWH8A/b+XR94k?= =?us-ascii?Q?Go6x17YNzetnoIL75peamU5bIHZtxXoS03ohY/nTkSyfwvw+dUMtVia0xMlX?= =?us-ascii?Q?iJK0hNhJ/SoNRa2PsOLB76Nq9R7G6x3xoOwMaRUkIK3V/l5dorBe9aetBzgt?= =?us-ascii?Q?Noo9oqx9xnhLTem9mHjCOZEBUYvh2uHs8zzdnnMeYqJS4Z+INaymCZs9IZfY?= =?us-ascii?Q?AtKBEfwFdcf0BtwLHpoha4xiO1k+5SMKAtEq6Zg+9gtf0WM5YUOXizCcCTdo?= =?us-ascii?Q?GBkSA2KiboorwJNNelstbJ7MQifvdPuy+80o4FpVgTfnjgcSlu6a7FcwT4Wd?= =?us-ascii?Q?bePHeBRcCpZBV5w45kpXqcnGBS0OoSKeUHT35nAZtRm+zU6MfEMcOJK1ZeCG?= =?us-ascii?Q?qfoewcmEm6y8kIvewNIzTrAwjvZsITLUoueK3vHXhcZ0SWAVzsdoIg24E9AL?= =?us-ascii?Q?ElhweGqKZ3u2GVAuAUNAImI2Ie8ud0FlbAhCrdo5ob2ZxIFEJgeec4Pe4gfX?= =?us-ascii?Q?J9P8WmdQDQ/TJ1bb3RZ4nrkQ9W8g7FYlMJ9fp7hcRAQBC5R9iTf7K2C/A2x2?= =?us-ascii?Q?+qV4q++NTeCtE3LZSXoIvvvdFIDhjk67mtBbQXVcqkYRz76o9+F2cFqWd7F4?= =?us-ascii?Q?MKwJkAZptTXdineP4iOlridwgx4uHOmvDpWA48hbaHHkA39MjujHivAnt3VH?= =?us-ascii?Q?eMEbGd8aQBVZm39tJTGknJcSV40N4xDugM8f/9pc8nHZ1eva2TsiENMzUwNc?= =?us-ascii?Q?P8fId8FNhVnRJLbqCWPeZ2PGska03fbwzdiAos9cOn1kyl0pi7NtvhaVVKiw?= =?us-ascii?Q?skYLN3P9iML2xfpKDt7EaQtbFSGJrM5HAsXncOcLaUHVd6LAmRNc7Bbfxl45?= =?us-ascii?Q?A0D38yGr2jFcEEY9lDTtZnpCytrs3klNZBtH/fdaGVx2TRNu5RZ0w7B2uICT?= =?us-ascii?Q?ul+QWAS34gaGyKWE9bkANhs8sdUQohjoTPWxcEYIyfM9lFPbsWfIUugHwGXV?= =?us-ascii?Q?wIsIm//v9URprgLzzD1rA5t0GKUmk2B5jGPUMwl73rOw87E/uEoAmwU/nS7V?= =?us-ascii?Q?P8289jTk74bdMpy6za9KQrmlGAA08j0kR8iGOHcZi0hSNVkVNWCtbZlpNcO6?= =?us-ascii?Q?XVKT2jr8eRD8DA3qbz96jo/APZmWBY7qnqwmPCoxJ7B0PGdl7FxzQYVCvjbQ?= =?us-ascii?Q?AmU/GPaP825+mEDJmytSqdCXQAh9g2I27pVdSvuiHbyH/UO2MZKm0P69ic2y?= =?us-ascii?Q?Qw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: tPXEgSnYI3unCg5HBtURu94BvAnkPpx8YFraO4QpzNVonBJGUtW6KIMll4pzGyb7T3xMrebz7QO+x9ioMyIUdqAT/2de1tL6x/6C8GSoIIGbiMx068kHnTGnITRxRMSPCx2sE6Lbo3tJ2BleY+QihN2SKh71BNujQwkKYmWcvhApmVsWokibi+qAiWCh92IfiKHJJCH+QJhX2LFwjZyCjYYOLnzxGix0bFBlTPGQW2bBMlybceCUg9HmkYQqdQhdcijsCkzuIFHACnZ3FlpX1JKIgw3nhVQPyAqdbtD2waWv921hI6r8on5zHh8GbCR2Dit8iJ00eUs0FgHA/LmfeSd3CbvAroiH4ZcIWTz8Zp/kzJ23hH/ZNhH9fK6AeAOieKQYddgz/fiMl/2t2GXFVTadU3H3re8eUxV/BDQdyPcqKWsT0VH4rTcQVoGgSETdxW4lD+74sJ1LmPE8s6YHHJl6LcLgIh8cZ+qdYsXIiPTEopREOxaapOMZ9zwPiyKyxJr367tu7GT1SoKxrYtCcJGuZ7wb+Bq/3hEgQBeWL42UpJWASu9L/yuqJXxjoNhg1JL4NVbgn2vAJpvax7liDASMKUmjT/oJMaff+w3neQA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab5ab480-b927-43c9-7954-08dc7eae4316 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:49.5834 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VOBNyPjaSX5giM4b5o7R3sH+CN1a26LDmrSWTb9iBLn+xhiyekJEVkTBbFqTyF94p8wRX0rsAS4eVhtr66W1QwaW6xcmi1IlWUiy7oXMf/w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: 0KFxodpnm3qf9ctrAqYtYsuRUXVX_EcN X-Proofpoint-ORIG-GUID: 0KFxodpnm3qf9ctrAqYtYsuRUXVX_EcN Content-Type: text/plain; charset="utf-8" The default preemption policy for preempt-full under PREEMPT_AUTO is to minimize latency, and thus to always schedule eagerly. This is identical to CONFIG_PREEMPT, and so should result in similar performance. Comparing scheduling/IPC workload: # perf stat -a -e cs --repeat 10 -- perf bench sched messaging -g 20 -t -l= 5000 PREEMPT_AUTO, preempt=3Dfull 3,080,508 context-switches ( +- 0.64% ) 3.65171 +- 0.00654 seconds time elapsed ( +- 0.18% ) PREEMPT_DYNAMIC, preempt=3Dfull 3,087,527 context-switches ( +- 0.33% ) 3.60163 +- 0.00633 seconds time elapsed ( +- 0.18% ) Looking at the breakup between voluntary and involuntary context-switches, we see almost identical behaviour as well. PREEMPT_AUTO, preempt=3Dfull 2087910.00 +- 34720.95 voluntary context-switches ( +- 1.660% ) 784437.60 +- 19827.79 involuntary context-switches ( +- 2.520% ) PREEMPT_DYNAMIC, preempt=3Dfull 2102879.60 +- 22767.11 voluntary context-switches ( +- 1.080% ) 801189.90 +- 21324.18 involuntary context-switches ( +- 2.660% ) Cc: Ingo Molnar Cc: Peter Ziljstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index c3ba33c77053..c25cccc09b65 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1035,9 +1035,10 @@ void wake_up_q(struct wake_q_head *head) * For preemption models other than PREEMPT_AUTO: always schedule * eagerly. * - * For PREEMPT_AUTO: schedule idle threads eagerly, allow everything else - * to finish its time quanta, and mark for rescheduling at the next exit - * to user. + * For PREEMPT_AUTO: schedule idle threads eagerly, and under full + * preemption, all tasks eagerly. Otherwise, allow everything else + * to finish its time quanta, and mark for rescheduling at the next + * exit to user. */ static resched_t resched_opt_translate(struct task_struct *curr, enum resched_opt opt) @@ -1048,6 +1049,9 @@ static resched_t resched_opt_translate(struct task_st= ruct *curr, if (opt =3D=3D RESCHED_FORCE) return RESCHED_NOW; =20 + if (preempt_model_preemptible()) + return RESCHED_NOW; + if (is_idle_task(curr)) return RESCHED_NOW; =20 @@ -8997,7 +9001,9 @@ static void __sched_dynamic_update(int mode) pr_warn("%s: preempt=3Dfull is not recommended with CONFIG_PREEMPT_RCU= =3Dn", PREEMPT_MODE); =20 - preempt_dynamic_mode =3D preempt_dynamic_undefined; + if (mode !=3D preempt_dynamic_mode) + pr_info("%s: full\n", PREEMPT_MODE); + preempt_dynamic_mode =3D mode; break; } } --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 D80DD12B17C for ; Tue, 28 May 2024 00:37:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856630; cv=fail; b=h+q2kU3b5vqKhbkEcQByrgg0FjAk3MDjpei9wrrp8oEiPvnn2GS0ag8k9F/4FQl4jQGecJzraiUEeH9pZ9l/X6qe5WRzr0iO/4u2FHuWX2B6DJWr4dJnh+0zlwxwA7PtUWD9I9ph+2o1IcK1zVAMGiie/5cioxej3LUVh4PUGyc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856630; c=relaxed/simple; bh=3ceJG9gJqAjC0LmlmbR7yzBaj0ZqJs+adUmG+61hlAQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=J/RLaFVrSSCsXm94k6g9mZbOK4Uk1vH6xbri32kNzdLfAC619YDMnOd/sAw07+9xtXG20pk9BnFABXA3+b7Myqz1RGTB1hqbFyE1dw2K87p8EixFsriYmYT1bVb+zbB5NaV+HGMHOnYU7dkAjXha9bwHeqbUcOHe1fRYN7XKX8M= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RG89mp026064; Tue, 28 May 2024 00:36:54 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DREdixNT5VQLqLMqf8JvB/Fl5AFaya6TLnsm8XTNvZAk=3D;_b?= =?UTF-8?Q?=3DHAa4JHsEVfmgSOcffAZ0MP179fuOHpe9A93gzRDcUlzoMc7ZuVwhOvnU2lnj?= =?UTF-8?Q?bE90HM4K_w/4I+WFM7WtIo8dlo5iwEa4soL3JT3gTKzlPs+2WyA+lddvDndqnG/?= =?UTF-8?Q?iLKmiRN4JnE/8P_AZGjl32QWxIM3KW8OIJiZQWjak1TgqPznXpYFES/kVHIAYdH?= =?UTF-8?Q?81qH1FizpkCjF1Nui37n_M+0UKNUa0CB/VTWFzsEW1zrpEPC5aYSa3EGETuhKTn?= =?UTF-8?Q?JTKYLw3pyl1MU0scwpTXrMmyrt_DZlcAUMJp/lO4cvzG6RQ+JI9NQAoKGE2Rjkk?= =?UTF-8?Q?ra+jOA1NsEZpRzidyJewvE/S0MqZ7q8L_HQ=3D=3D_?= Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8kb37rk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:54 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RME2PD016172; Tue, 28 May 2024 00:36:53 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2168.outbound.protection.outlook.com [104.47.55.168]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc55vtgb2-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BMC0nB/3Y4qCN5UUUKigHuFu0Z92Cz5uMf1nRqhsXUchhAFQ/5c3+y0CHX6L6wNgrpMs71WvA1gvvjmFOmZF9rPK7mskGRsLHI/CUTDnRXxrKIif5Pe/5VW1YclM96thz/J0jrHgPiGtn7/nh4VvYxUBChyoDhG0aTL4MHc70G07PqQ7E4p0fWvtYcon1yzZEFabK7THDc6BsC4a4sySR5Y629OZrVga+gb6wcUSg70IUucWUS37Zc/BM355GeI9qXmIIUpg4MCb+nUifSrKPHzsZnmfVU/Qx6jdFsrigvTatIF8ki86bVDssMy6UMMDbIzeBz8RoNNJZSfW0UFV3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=REdixNT5VQLqLMqf8JvB/Fl5AFaya6TLnsm8XTNvZAk=; b=XT8ojj25+LT3Uzvb/SxHK4qREICWduoefAlx9EAPtcNlGzJ9/zAQJ5W5AduAMewdvEwcLDnBr08Nvi+L7e7tKOaQLKTKQrb4FX69xDFau0qjDO3tHoIVelTV97XDAZFDLswxezXY6Wi2kG1ybnmlDGvWb1p7KEzOEmijKkZ6FkHhiy72z2QCPBGDGngUlVPmLLu+fKZNKMKwWQFMQrWeWYDpBZaNsYHCQxsmMLPPe12m9aodoqX8uNexu48cRm4/s9qRgZvbvLjM/GkavKael/hPYkvj3roTZznp7Z+eKJkQKD6d1ot0fAuDeLS/sezcYzAB2+/MDearG6Q9XXs14g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=REdixNT5VQLqLMqf8JvB/Fl5AFaya6TLnsm8XTNvZAk=; b=fwsRHp572kGUNFvI4WXFl3UUltw02h/UyE9VBnB4eMJKq6vwgeQooNGjYVlH1R+zYM6DEzsP0TT7FQ7lZ4mTwNYShKPm/Z81T05IxF8DkTzW4aDduxAMyl2Fr8lVbCi/+xak19VeAedAxQ0qHF7lV0W9JQtyGoHpEWZj10O9khE= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:51 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:51 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 29/35] sched: handle preempt=voluntary under PREEMPT_AUTO Date: Mon, 27 May 2024 17:35:15 -0700 Message-Id: <20240528003521.979836-30-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0330.namprd04.prod.outlook.com (2603:10b6:303:82::35) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: fc4bd3c8-1971-4b9e-d8a1-08dc7eae442f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?juBKbfgoNWd+DGlgRJ+o6o4f7dfzoUdqBLCpM959vt5xPobnvltX2G1ZTUhk?= =?us-ascii?Q?bt3yRDz49eUXbjkwxeNrLaFFIWI7DIvaG+kGO5j/9rWEl14y/p7aCPchpCEL?= =?us-ascii?Q?0uINedjQqm7z5sKpowfH0/haZ/I1WX0jrsA8K3WxWv8ktmlTmluTPdRTu0FX?= =?us-ascii?Q?ffCxc+mTWnOm/y1AO6D3wiWCs4VaE/VFzPYIl7hiz9PEJ5PiFN9KB68SLXlg?= =?us-ascii?Q?mOL3+w5hpUnUz47fLciHKZdT/fdNBz2RvlIcg35ZwnS+qa2LVVqq/Yff5qAb?= =?us-ascii?Q?l0Abt4HgeQGeGCsrzZfrkGHk/xF35o367ZzdvYoUTITW6LRDdDxE5QQrFaXn?= =?us-ascii?Q?VvE9eiQeHusZl1uYBUpCoLkSXQjMGHD9nDYlUgyNG3kpkf+l4hZ3ONjAHvbW?= =?us-ascii?Q?sW0cJjvJwcpetf7jAtstK+CLQgwJyaFRqmMjk/hh1bReOj5o6+rnTZc8s2tO?= =?us-ascii?Q?/7nilbG5K4YbYDt7roG9z9hiXj665UiZp0m7UA14V3S14fbzPZQABPcUbwa/?= =?us-ascii?Q?f7WUNdrub5zO8wLj+wII+6m8bRgY26BoqHTzFBSBUnroJTNZ+IG4V6lntAMu?= =?us-ascii?Q?I3LZ9M7yGvIck1TqZywBosxw0158XMlnj8VMA2AKoVIT2mEiYd1XwUT+b/gQ?= =?us-ascii?Q?Bll/TjtyV2f1VKfC8wGTZi+pvzTrjM2fm1DbL52vhkNhLw2qsy7lhzgejaR/?= =?us-ascii?Q?WBRPdWwzCucJzu/9WjI9REkULOey/YP/6Y6DF5ZuLIlKVO1Dkjaqcu3zbQXx?= =?us-ascii?Q?jBVb2SoAWWdSUfTdR0uxBnQL6sfhsfZtexIcvs8UneN7E1PzeZ66YXYGcHU8?= =?us-ascii?Q?8KUZgIJlJAc5FWkslreXZJk9ZHUt1ZDzr01dg+rDBfxYoRjJQaAwlzXtgK7e?= =?us-ascii?Q?xgekQIW6G7FZ9MatVninDZlvlsBQMWbDXlw5xpqMR8ML9vgr3lPw6ZdM9epB?= =?us-ascii?Q?47jT/J956237S8F//lyQRJgZnrASE/cmXnW+zoU/i+Vj7ikf8tF/Fu63Nba4?= =?us-ascii?Q?95JMb9bVsXXGPB5QfivzlTP2bzW1rvLrk5i0v6JxyDZCtHip53xe61KcHkrt?= =?us-ascii?Q?ZCubFvfjgv0eFA/J0gQDb/YiatXgSuP9qSxnFI+E0uAWfXnIuKLr3Jgy778r?= =?us-ascii?Q?HQyGLB1GJr9EQkP7EEPm82iKqBj7lCQODmhTofJWcaurMptLgD6FuzIwG2Lv?= =?us-ascii?Q?IjX9OEK9Yck6KV9TSMPy5jwNydbrMRGzoYXmsQ=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?fc0Rc9NCVRcDSu9vsp/Oid1ZufiGghcWvR2YJnmNebFkFE7hwQx2vBbCPKGy?= =?us-ascii?Q?+9ui7tNS7lQpTf/fuu2TpGkqKAp3TyPz+Ou8qEt4uqbZ9cw8w7T7qXK5i5ki?= =?us-ascii?Q?9LOcQUCnuX/5w10dKVX+i2EEo3r7NzaWPH03RJ2evavwmfiL69wgvm0SrXJ0?= =?us-ascii?Q?vK+9bhq2yqsAhefzAXznu8dtgyRN225TcChCljQGMEX8OwPmO6aYq0BhxwFB?= =?us-ascii?Q?YwwG25kCaeYvr53lM9nkddK9sBe6ZqRpd/mMxP5q+mP3F5SjCBlqdQM+f/q/?= =?us-ascii?Q?ZvtAjNm40A8JTgrMz14zFEEjZj8BS0m2C08vOU5sUMfI7IrT1ikuIk/XPbVP?= =?us-ascii?Q?U1x5OuTEPzRDSLYaecPxLHB1KeWnqlVzkQghZ3YkL1LaTsfI3bPK/PhlWIlt?= =?us-ascii?Q?g5vn/HenuZNf/VHt/7Z7jsmVdtLW3tm27mdmZ8Ez1Y3N7CMokNZy13zv7z71?= =?us-ascii?Q?vLmlB0N+4pEFl/UGGw6+/8Sbh/8I5qABzJMunPgwhL56I9F+RhkAG5jOuAXC?= =?us-ascii?Q?nH8XgbNhgk2OGWuZ0+OrroqsQm+haI/H0WM0xTOYO+qF1goFKfK+ep2Z77iE?= =?us-ascii?Q?/bi1kCTbSW/hPO6jlUJ+nYvnTwrf1dgDOH6f72jcVUk/uw6Hu2uX4fdUuHte?= =?us-ascii?Q?NU4ii5eeQIZqYRW0HM62VlD5I+JM2IryK7SnzAa5UgKX9FwaqvJhrZDNbgCg?= =?us-ascii?Q?e+ugatMIB9At04Inb6In71PF0bW5GVqd8nA67yF51dYmFYg7tsyg4/qMkv6+?= =?us-ascii?Q?x8mAA1/pR+ZN498UGiQEYc0jRgdCFre2vmKk1rpcTzGJmeKjtMk9nflDm0/k?= =?us-ascii?Q?+d2So6NsEjDGflN67agDRugjghA1NGI4vBWQPH9tuEjwMxrxy3+Y333Hzj+A?= =?us-ascii?Q?d7nC/9GN74czgu4XHDCrjImkxAmSmd0m0WtRcvXwXAy1yfiiI3RUIpg+qpSc?= =?us-ascii?Q?lAzh3n8+Uv3NqWNWjGEtIGg5FB3ikJdjeHj4I01U6XAvQ3Hi9aXcfb07ZDsM?= =?us-ascii?Q?2+GPgdm4fPEne1uHdhal020egYSBeacF+3nrxbcKroTHHPz2iuzsdkjMwKnG?= =?us-ascii?Q?J1RcTbEeBtQfTQtiNJGXoig/h9HfUuY1mhqQyqMnEBNlMVReLvSZ2IDNg8ZX?= =?us-ascii?Q?upIqg/lmwimEFnWjz2j7S4t3jPXdCgs1TldieY2xt1OyUxG5FRNKtu3+Tyxd?= =?us-ascii?Q?5N+DRtTyCTLk6CHzCzBzshdFrBNXPAK7Jo+PJL3nQrm6U9jVpxvaQIt3jrqp?= =?us-ascii?Q?ksaahGN5QkHdV2UZGoJwfsO4eVketqOKhNIozhh8XxAWFWWNy8D3v8le659a?= =?us-ascii?Q?bMhUAn0gi3MJs0mUd2zh+ppBUcJ5OS0umS/j7vaPUf2wtv/vz8ZKgZx3G9/P?= =?us-ascii?Q?aQPDvgHeVf6vjlg/kLAfGu1awrCUgySI6mnfyn4oBzRB3Xjv4/9UpgHZmQah?= =?us-ascii?Q?BgxbvorQ6RVU3PXI5AdvhfaJj24qfyZWb22WNg8A1YrbkKTfgxYHAspV7ES7?= =?us-ascii?Q?6ZqH7QPS1aMor0RGKbXAfFKKTRqYkpJz47RACa07McUnvpN6XzrsYSk0eGym?= =?us-ascii?Q?nsS/iBE5yLIn9ERb06hz2CEeojP46PB3bKLlge7MrpsUq4ZJ6PLPW4KEBErM?= =?us-ascii?Q?Lw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: WxCfkZFA2Jm6zplXjgWEM3iT7OTVecs6erNOr8mVEDa0NpkefbGQRdLJvIz41WktoqalG5AVm+s/q2q3bhw+AAQhBSV2m0TR7HEDeNL/gV319Lm7uF3hGKHp3xi88Bp3Ba7WLs6ImSaa/yS/Nk7m3OKLjTHmwxBRBKCmPkqgQQ2gUUQ/wlM3OzTMWKeBSJb+TtZUaVjTAIA/uKtmHdOL4Xo/WswlrauCFJF4Q+pU2nCvcVom/wZkVDkbJzyVQdfCMuCxPNo1JEuR40BSL2eAruv/CIpgyhuLceeytWdpzf5TrtTAH86PfhBQzueZisbRKGtd7QOdsZlw6F5ssEBREiwb7SKBuBRJTqJStCEae4UvIoHzNTZGNiiqSBAad4sB9BUhWT8BHUmCcBzoKvZleQkK75Ypr55Hz07CBjHTDtiaidCvLwwllXy18NvfAzSoxNJRc9ChhpCOiDQBX55XqVv1PVtHX2VKmx/bqJ2N4iEkwYclnmUf0eT1zWubqp6g7SDX05pInP/bO8aCX9VLxjM9duggADc5PIX52LlEMuJL9IaZ3IFpeolz75U/h/Yfwmd9jwUOdE/pPWR1a/fIMTVvG/u7Fvy1NcLbBh9YYXA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: fc4bd3c8-1971-4b9e-d8a1-08dc7eae442f X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:51.4655 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BFw70yCJqoal6X0eMmCQL3yM6fBRzXf4oOqjSWU0cylY12eMLoo2fQdGoMVcgR0CtWpEkn2cmalPw7A6aD1XcUPrRQmwhZJ2Z1qZkPw8rOY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: T10g880XklQF7SQI3i1f6ijutrj9-P_P X-Proofpoint-ORIG-GUID: T10g880XklQF7SQI3i1f6ijutrj9-P_P Content-Type: text/plain; charset="utf-8" The default preemption policy for voluntary preemption under PREEMPT_AUTO is to schedule eagerly for tasks of higher scheduling class, and lazily for well-behaved, non-idle tasks. This is the same policy as preempt=3Dnone, with an eager handling of higher priority scheduling classes. Comparing a cyclictest workload with a background kernel load of 'stress-ng --mmap', shows that both the average and the maximum latencies improve: # stress-ng --mmap 0 & # cyclictest --mlockall --smp --priority=3D80 --interval=3D200 --distance= =3D0 -q -D 300 Min ( %stdev ) Act ( %std= ev ) Avg ( %stdev ) Max ( %stdev ) PREEMPT_AUTO, preempt=3Dvoluntary 1.73 ( +- 25.43% ) 62.16 ( +- 30= 3.39% ) 14.92 ( +- 17.96% ) 2778.22 ( +- 15.04% ) PREEMPT_DYNAMIC, preempt=3Dvoluntary 1.83 ( +- 20.76% ) 253.45 ( +- 23= 3.21% ) 18.70 ( +- 15.88% ) 2992.45 ( +- 15.95% ) The table above shows the aggregated latencies across all CPUs. Cc: Ingo Molnar Cc: Peter Ziljstra Cc: Juri Lelli Cc: Vincent Guittot Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- kernel/sched/core.c | 12 ++++++++---- kernel/sched/sched.h | 6 ++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index c25cccc09b65..2bc3ae21a9d0 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1052,6 +1052,9 @@ static resched_t resched_opt_translate(struct task_st= ruct *curr, if (preempt_model_preemptible()) return RESCHED_NOW; =20 + if (preempt_model_voluntary() && opt =3D=3D RESCHED_PRIORITY) + return RESCHED_NOW; + if (is_idle_task(curr)) return RESCHED_NOW; =20 @@ -2289,7 +2292,7 @@ void wakeup_preempt(struct rq *rq, struct task_struct= *p, int flags) if (p->sched_class =3D=3D rq->curr->sched_class) rq->curr->sched_class->wakeup_preempt(rq, p, flags); else if (sched_class_above(p->sched_class, rq->curr->sched_class)) - resched_curr(rq); + resched_curr_priority(rq); =20 /* * A queue event has occurred, and we're going to schedule. In @@ -8989,11 +8992,11 @@ static void __sched_dynamic_update(int mode) case preempt_dynamic_none: if (mode !=3D preempt_dynamic_mode) pr_info("%s: none\n", PREEMPT_MODE); - preempt_dynamic_mode =3D mode; break; =20 case preempt_dynamic_voluntary: - preempt_dynamic_mode =3D preempt_dynamic_undefined; + if (mode !=3D preempt_dynamic_mode) + pr_info("%s: voluntary\n", PREEMPT_MODE); break; =20 case preempt_dynamic_full: @@ -9003,9 +9006,10 @@ static void __sched_dynamic_update(int mode) =20 if (mode !=3D preempt_dynamic_mode) pr_info("%s: full\n", PREEMPT_MODE); - preempt_dynamic_mode =3D mode; break; } + + preempt_dynamic_mode =3D mode; } =20 #endif /* CONFIG_PREEMPT_AUTO */ diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 107c5fc2b7bb..ee8e99a9a677 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2468,6 +2468,7 @@ enum resched_opt { RESCHED_DEFAULT, RESCHED_FORCE, RESCHED_TICK, + RESCHED_PRIORITY, }; =20 extern void __resched_curr(struct rq *rq, enum resched_opt opt); @@ -2482,6 +2483,11 @@ static inline void resched_curr_tick(struct rq *rq) __resched_curr(rq, RESCHED_TICK); } =20 +static inline void resched_curr_priority(struct rq *rq) +{ + __resched_curr(rq, RESCHED_PRIORITY); +} + extern void resched_cpu(int cpu); =20 extern struct rt_bandwidth def_rt_bandwidth; --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 0951313C81B for ; Tue, 28 May 2024 00:37:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856636; cv=fail; b=so2pCYm1qVHk2D74UkgsATbNXhzUkjj+R0juKieYI9sr6C5xiZllRGuI6BrvJRV7IzYyJkFB+dLTpIqyBRPNa/IdspvrXiIC8QGstD03XARMzbWpVnpjhY6e7Dj+yLqzRMuK9HZGzpCpw3Mj4y8SrcWLoJmVycxj9wO9G88HVAQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856636; c=relaxed/simple; bh=fE8Lj7oIdkYG+2IXF/V3Uk8Sx22gVS/2kjJiYpE2bJ4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=PZYkvwLXAeedWANNWOdDRkYbA72wMspcYcL2ylyc9q3x60KgMorz18jYd8cP2ZZGNRRaR/emudpHfLfQWtt8A5In4KtX89q48dRRuKU0T7swrJELZRRJCWxHyOT5+ijn1lqPjIR3ShMomgshtmYcD3Htnuj0PNKv4UQk9PkYqJc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI4aL025161; Tue, 28 May 2024 00:36:59 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DKEcOg6TTu5LjMdHM9GsPiktnEd8VxG7vmFKMgnemHPA=3D;_b?= =?UTF-8?Q?=3DSin+0aEnjZWTD5ovJOh+yzC1HoNaS00IgaXaU8aI6NDs2yJyYjiF4X7Jxsvh?= =?UTF-8?Q?HqaBW+wg_iaTcmWc1OQEGct7cOlmzj/w3tlE3oKOrjbAODvtFmyYYhweSIUCNPT?= =?UTF-8?Q?B8idFsZDQu8Ggn_IMqNiEAn17XTNxCFdK+g2m64A9pecaYiFRYbCmkDNMmQye+9?= =?UTF-8?Q?X0iX5s3Jc4HAM+DRGQOV_hgTTwLLz3vOwxpC62GsklqPW7csdbWDtfwGG/yszEW?= =?UTF-8?Q?r+tzIT83rQPiGFzZa801/nYdlX_uwveJuieNFIgqjj7Fa5RRyEPVE/3R5OuYJW9?= =?UTF-8?Q?zYgTfktqroqOgWBOM2s+arUTwW585OGN_1Q=3D=3D_?= Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39cp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:59 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKdPcu037607; Tue, 28 May 2024 00:36:58 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2169.outbound.protection.outlook.com [104.47.55.169]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc5057yh0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bcjQarElSkTdC7tMnGThNP/nOGjZ8CjY/a4WfCWbNjp3FhXan7QZIeRyWswCuXG15UNSWNaXM+96t/2VfuoTvHguTw/bSrZ8cBiQS22xsxGQe2JXUtGCuZMp6AGBUBu3nN1BLAhzZCkxqo1pNpY5VVCh88g0LmrzwZ8sJIJe7oNOtQHlFuyHXzoyr6UD0Tto2JlchELXtzyBDZeq/+4ZWgt1cayTitZFWhCs+XyyW/8XG7Y+AufMCqoRvMDd95PfQelwJzAHIVkPYKsweXSc6t58r+0etAYtBcvjZt6W51uGGsekZ58r0Z26ffJ1QFTk4XJ89Z8H3C6RyIDv6hI9Iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KEcOg6TTu5LjMdHM9GsPiktnEd8VxG7vmFKMgnemHPA=; b=A7RI2rA6Qbbpo4hpSy0kZZUkCSgfevkTjF3XLyQ3YvJWczCbSts/H1kSC/bwnZyb+9GjzUk8Pd5C8hTG43CoajSaek0IzAaBSnXTKroAF4Jx62E5iQey168P47GmncKHjFve7DBY55XFPIP93rH8M4XU4HmpCHkr7L3n8xKJkFszu3OTJbROjJVHdt3aXq45aM/sQZQLGMf9go8RiChQXHTxbGunL9TLPBA1zvlZQRfQMGkFyw8ekb47AtfhpsIg3dh50vk4bzSwUN3atqLKlk/eje0xQEVPp8fZDv/brsiTLRHXItSeIa9yjUdVfENDJIqVb8lTC3MB+uDzeaBZ0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KEcOg6TTu5LjMdHM9GsPiktnEd8VxG7vmFKMgnemHPA=; b=m7oMrNke2+woycUhwlGMrV04PbyUCk/D5feRGS0iAyVFNlFHwEVV92yqtUpSzU2xf1Qdfwfvm3BAb5oZM7Q1LQSBUVjVHjBSf6iwMuZOUko/u24UdhXfULc11nRXsIRakajG2IZLjQKbUBiLfLavJX44BJREovhSJ5mg1qDtm6w= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:56 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:56 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Ingo Molnar , Vincent Guittot Subject: [PATCH v2 30/35] sched: latency warn for TIF_NEED_RESCHED_LAZY Date: Mon, 27 May 2024 17:35:16 -0700 Message-Id: <20240528003521.979836-31-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0358.namprd04.prod.outlook.com (2603:10b6:303:8a::33) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: b6f0f6c5-4d22-4c35-9b63-08dc7eae4703 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?cmGhlHuJx1oEcLxBNKNoRC+NIGgcXUyynAofBhY1xiZhjE7AUHrGnol/5hpO?= =?us-ascii?Q?+sIM+vypbxR1T5uSvRkJOzZH0GRA8lKh4gBFWwdpDOMySTDLOe5uO7agoPbT?= =?us-ascii?Q?F9EOAGZMOtg8NmhydAVNZ1tbluDRluErtTLjGzzb7Z9jpHzlMT90h0kKeGl5?= =?us-ascii?Q?xfxUwg+JFGwCA2FNpwExM76uuipya5k6XHO7qWaOe50e8lfsixStrPwmqv9r?= =?us-ascii?Q?kvNRsb11F2jbJkrNZHuTBzNVNGTHW2MdDQL7INp+7XVOvhhPxBUXa8KkL4UE?= =?us-ascii?Q?n9ZzMGkDey4w+v9ZL3hDLo7i8oxK3lEDmesF6F+4sMCheGgtyT2gykwfIWwW?= =?us-ascii?Q?9bUpwcevYeyoc8VDBxUnPbeK4yB/r2Q5v01+cZu280m1BzgdlRa0bhFGGD0Z?= =?us-ascii?Q?yxdfTqqRFAs8+7L0ChBf2cbRq7ElkPftgFASUQgOEdjPCr4R05E0yxhUVUOy?= =?us-ascii?Q?Xwh2tiyrj9QHz+Nm3DCskS16pLaiDzpCs349JoqXFc/Em93qyKWie07nG5ay?= =?us-ascii?Q?sMsbW7BtOryvRK6Iml+q+kjHuPg37m9/8m24u09ael4SqsTccgbNK+ghimfk?= =?us-ascii?Q?/NL6Z5XgJq3kUaCQOLflGRBxfQY36Qm5XBs5i6uaaPHM9OsB1ZjUFuoYk83o?= =?us-ascii?Q?kS+nopzlBKr0q1rC9i3EX0MQk/nEnEFRYaGtoaVAM57qhelauBbNEtRkZEee?= =?us-ascii?Q?1gvZuGcgFxwa391HJZwX5MleX1830nbJo1c5owlk0nSx+m7Fdl8I2k2N4/p5?= =?us-ascii?Q?O+4udVpiwVFQ+0sQiiG1tDGTiNeFs70LdtBtroB57zv/XxCKQ45+atSh2TyZ?= =?us-ascii?Q?gvDZjr5SJW9WRMoXGOaMvvJVnjfvTgQbNr5NeXoOCh6AlcZX0a7ApYJ9FDKB?= =?us-ascii?Q?ImoNKqA6o/wW755UJ7P3YXVikXXgy2HdkrmACIUCStOQCvuFzG2pUyHDw1PR?= =?us-ascii?Q?GhLZ66ZgdGyxKQltU1Vp3lJPe0ZLyrR9/jbrmCKQ/eXyWpqWPHHmVg44dI2C?= =?us-ascii?Q?yx20PuovkRxoZkpGr/8sTJbm/B/z1yg5eIN39sqIpXA9SvtTz64y3UVbF9kl?= =?us-ascii?Q?dZiuADrm4rUxIz2DUblCcADFaKhzS7iaQzz5y5TiZVxcDnNuIdIW5h88sgb/?= =?us-ascii?Q?W+9N4AaT87cHDBnazbqw2dSo2QKROBMxeDGPg3OpWPCOHYMb9EyHOinbsaof?= =?us-ascii?Q?Lug94ck76Pv1sabVyWtj1691uWkgWxR2znGLGExZrsertjFIFDpeDWWfg6NY?= =?us-ascii?Q?Hu57aExg+7oPfh2xTRUyzJ4jjscwKBdDmqkaxcesqg=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?UWnnnbAIN1c4C9wQICynJ6k6tlj2vl6K9/HQkMpkmO8N3NSSmFLV8CW7Brsb?= =?us-ascii?Q?fJB/6es0TyW/UUyJ6r/a5C+U559Mpp4pp8GogFwdDQKIScacjP6qQndADeZn?= =?us-ascii?Q?aGEc6Arcj2nhrmNMgDbyB9lE2Ac8sYPX6fvRPQckNS5cjp32ci+itgLMa29i?= =?us-ascii?Q?GbSfw+/nR0wQxB8MH6sBUoxwPtqpu49INrDY/AzU7+P4Foc359d8QQpuVWe1?= =?us-ascii?Q?xLCbSpqwpM1KmONVq/uNUWOSSSH9aTYHJWOtRAWBJmwbgzbzQckixhWhQp7h?= =?us-ascii?Q?MbhAIw9gF5/L9w8/N+tYY5b/lFHZNKuKF1pGR3OmnM529E6dE8tcw9hNiK50?= =?us-ascii?Q?bc6yX4SYy7F41ppUJQq0Pebp1NPFwXARlVd/JxhhScoVew3/H5SZz3FzFbsV?= =?us-ascii?Q?cdJaJbN2vvrQAEmgw5eT+I5mMroc56qLLA7xq9R9d6jeZCAL1nolbaoFlfwq?= =?us-ascii?Q?jGVmytaiq5XuEEHQPhFWchetOqazV9XNy6dIlGeQoj0mGHcpzsmrod0YxXur?= =?us-ascii?Q?LAvVxD9E8qlJIAxRVsfLdXpV6beBH6WmBElukhs/Xm8MxPyoQsMNruYMNk5m?= =?us-ascii?Q?DwXib49GKeLHZ/t1I6ji5+9kkXCpYMKCndFhXn3bDLNkrW7u3uPP6KTD1jMN?= =?us-ascii?Q?MGD2LslsBYCG0z2ZRvzBTXg7bozYwXTlu7yvNHhGB6JLv1GTiDlgbUAAD3DL?= =?us-ascii?Q?f1UgJ4gLFefdQIinUGa5ws7a7+x//Ehld/uEfu6eiqM0/jw9wpPa23/uVLmx?= =?us-ascii?Q?yUpW0yq0xIQOJFONYuTuEC+0O9YqQTaAAGx0ERwhWR2lqJg9cPT0Mx9Vi1T7?= =?us-ascii?Q?51N1o/R/mfN99MePJzmBGx12glJV9fWo4qFodyPZ6Gdizzsx8JAzCLQVFdQm?= =?us-ascii?Q?JFrWKHgZpKdlPAJ0EAVAeLHAIKhSMrSp6982m21p23upv8smeA4stAC3MejL?= =?us-ascii?Q?3W+IoW4T2NQ9gO+twdaADkU7fpy6ovnMAPZ4JSgFWSRQfRThTEXQqo+v2lHT?= =?us-ascii?Q?ZKEU2t9v9b3j69/4a/LRq7TXE/wveaxm69xq1NNvvQcpBAN2Au+C9SlATqg5?= =?us-ascii?Q?vrUcTz5PDwMUUbgmiLHbyoSHprQqnlAfRGEoPWOClJB1duSR03SbdsXSmAKc?= =?us-ascii?Q?0TVYlmRmJbnG9pmCSZei8FTBKxZ7SxmX246uXsHSFBV9AVsOFBrq92yUsCFq?= =?us-ascii?Q?g2Wjeyq6MKOQOExrsYQ1UFrLsmY7hnOmqGH+h0hyg5hngA238nGE/hWAYbqR?= =?us-ascii?Q?ejjJOZTWkx89NejNPhXx1Q7lYVjfhGCMUQ6ROOrZNT2HgpM5FFfwgQQimS66?= =?us-ascii?Q?NMjtK8msYa9k0IQlGDQ7xJjrPUE1lQN0cHahOPIi7+9rg4fPHHwvyc3tzWov?= =?us-ascii?Q?jy1TD+yRVRuhSZGThGWyEFuAVsfxoXYqa2mbUwVwMPRAF6ilI6lP6ihTDA8o?= =?us-ascii?Q?e2QsGIFRPbfBS0mm9MfnGlqlg00o1HpsNqDRpo+/EAgsT5cjXJ1VbpE6s8IV?= =?us-ascii?Q?EozHt/1uIJzbVakmdNX9/u6yM+qSDSvlXPTI4283gvMKglbNUFSuIx39/581?= =?us-ascii?Q?Ffw1rWAK31g1IKP/2iwIaPKNIvOdSCQzYNW2a/zxIfHuFHCbKqrK28IkipF6?= =?us-ascii?Q?cQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: L33ocEgSmE+XIBfq27JAUoRxyxoxC37xdV0VjxkxqztnRTvZ82OgqI6QiGlhbPB6PSEQg8IyfgSwlajuTY85gGjeBII8m4QHlT+fHoBJdwPcRbPgpERy8Fn86ysnaN/WJ1nDoFLDoxwiFzdWWLoOiJUeHxrnbu8CH+JBP0NFx+I1me/TRNeo55lirwUPmOBDLgyFGYNSL5QIHeRwvY63TB7SkdrsGf3qCX1Qd81HtyqKWz9OO1Oew6Apigiv8FajYBYSRCMDWqwiXJoZtrdMmnR2fMPpzg037a2A74E01BcxixYdSM2c7KR6r/Ez32V7r6sqQFzeClZ5gDNm8yBEFm78uFZ7nky7JiH8z9RyIfQq46QC2Dgs4rIjeMvFeK++pY+FyqljFuJWGUaoSOhPaEI758UVjSzBoD7pR7Ady3saekkoS7EmOS0naZCauUM7oiCAHrhifvK0DZ50up2p7XO7gGdK68v4bb5LXJWBEInr2WPXBTcbj49BkDju6c42Z7NIHBdCcicZjqKXlAsqvjAjCFdAVebzLR4MSYWWurqq746A1Nazu0VTtk1bXNcsSOK8LAiacrg8Lk1iuBlvr0qv8oqkCoDCs70MrdyeKBY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b6f0f6c5-4d22-4c35-9b63-08dc7eae4703 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:56.1956 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Qn+jn/R7dt+AMla+e1tsZegFihs1MwNA20bKlcIeg7ekRjulUUVvH9gU8WR81qSpQu4tAqOt9zn0VrSfvuC8r25g53+r/cxvhpjOxpldFTk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: t9mVAK44QA6DJhOergGtRERsRVzn5-Xf X-Proofpoint-ORIG-GUID: t9mVAK44QA6DJhOergGtRERsRVzn5-Xf Content-Type: text/plain; charset="utf-8" resched_latency_warn() now also warns if TIF_NEED_RESCHED_LAZY is set without rescheduling for more than the latency_warn_ms period. Cc: Ingo Molnar Cc: Peter Ziljstra Cc: Juri Lelli Cc: Vincent Guittot Signed-off-by: Ankur Arora --- kernel/sched/core.c | 2 +- kernel/sched/debug.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 2bc3ae21a9d0..4f0ac90b7d47 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -5673,7 +5673,7 @@ static u64 cpu_resched_latency(struct rq *rq) if (sysctl_resched_latency_warn_once && warned_once) return 0; =20 - if (!need_resched() || !latency_warn_ms) + if ((!need_resched() && !need_resched_lazy()) || !latency_warn_ms) return 0; =20 if (system_state =3D=3D SYSTEM_BOOTING) diff --git a/kernel/sched/debug.c b/kernel/sched/debug.c index e53f1b73bf4a..a1be40101844 100644 --- a/kernel/sched/debug.c +++ b/kernel/sched/debug.c @@ -1114,9 +1114,12 @@ void proc_sched_set_task(struct task_struct *p) void resched_latency_warn(int cpu, u64 latency) { static DEFINE_RATELIMIT_STATE(latency_check_ratelimit, 60 * 60 * HZ, 1); + char *nr; + + nr =3D __tif_need_resched(RESCHED_NOW) ? "need_resched" : "need_resched_l= azy"; =20 WARN(__ratelimit(&latency_check_ratelimit), - "sched: CPU %d need_resched set for > %llu ns (%d ticks) " + "sched: CPU %d %s set for > %llu ns (%d ticks) " "without schedule\n", - cpu, latency, cpu_rq(cpu)->ticks_without_resched); + cpu, nr, latency, cpu_rq(cpu)->ticks_without_resched); } --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 6B1FD13C82D for ; Tue, 28 May 2024 00:37:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856638; cv=fail; b=qqB8ffJjb36pFb3ypSXGBwMfWxg7L5PKE155QUruuQK7MH+rtS8Z75NO9wjx7Xw8bPOjsD6AchzGEAghopar/4YFw5UwLx6EIaZyFQvO2pUcxM29RBf/nYmnNcyH76VIuXDihkGcr3IjhuMmckDpCYaYO8AJRSW5Jg3VfoeuYo8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856638; c=relaxed/simple; bh=CzD0C5NDej4M2l4uIwFyLE4WN1zfmfT2PXt9PNXNBJg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=RyTY6xj27gzKTVHYMCrd0DmPeN1iXoChlMjpka44I581HY6mIsU2olNEFxoHiVybHuUWtMzeZciHNThmNXE17eiLpijZG49P6zM94qkhaFzIdwJyOGg7VNL5mk3u2Is/r3AmYMR8S0smsjAZF3hgIZtasQtUdKd7vKMeTi2V9Q4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDINsK009429; Tue, 28 May 2024 00:37:00 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DUJUu463f23ohZqqHp/D5EAwaqO09+223Nf4SOKut8Gc=3D;_b?= =?UTF-8?Q?=3DV1eF07/zACuboF3rSRVxVJU8t970kN02xOTlhH+JW40umVcuGMs4CQTeDPfD?= =?UTF-8?Q?cO3f6/4F_A61/OS/a8WdIoqBh5Fzc+YJqdjuv1B/F4lafa1ILYv4HfSo3aSBTQB?= =?UTF-8?Q?EaydrktNTHzx6y_Z4VOf52tOspCiwHVKbrqJP1msqczs6prrObgDTCyCL59I4l/?= =?UTF-8?Q?nCdMQVPWGH+P8OHeBSHy_DguGHvQ7+seqSlIkbybXTnNS3aEV/Mq5SXZYYUm+s/?= =?UTF-8?Q?pBn8ii/AnAj3fQEv29DmOiA3AJ_7kl6iE/4LlbvgKCidLIt3X8eGW44cf2OBLVW?= =?UTF-8?Q?s8G5w/dkdO71W4ipw4Iv0vJCWRSJc9dC_yA=3D=3D_?= Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8g439kn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:59 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RKdPcv037607; Tue, 28 May 2024 00:36:59 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2169.outbound.protection.outlook.com [104.47.55.169]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc5057yh0-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:36:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fi7fMTDKdciNZiOLYbqBvEm+zZ8shQPlV6rOY64vLgeqjF/dytSPPYMKirCC5c9JCxVACV79yQcsqoVKPUgFlS/wetKTmuBR7OQ95caEhck10IKaNSPKWdVDQTNw258TYkZ7sQnojV3oyWswqHX+7d5qof/54ijOSCxzxa2jXEtL1svmCsuYSbrinMYWmnMLBMFTo/InG2dNmAnX/2kYLLACJXHmeuypWJgdYsfxrpFV5K4EvEzz0Jk+Z3YwPRs5ZUePkl2pkeGMawa6cSLmpUMT1E0FEWff37V0DKooYUfm3oavT0VGVuueDnWIN6Ny7xXV6DEK31f0nBSQgAKk9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UJUu463f23ohZqqHp/D5EAwaqO09+223Nf4SOKut8Gc=; b=BlFjaZcD/BRT5pi7mWc6KruNmanUqxQbpSCIguwmlCzWZcmeiel5yl3W/Ea2AJ9+3lv6Un5sb4LEFXCz2Q+cU88t4hlj342Ph3RTB5oRO/Tf4ZFhRnOk8jCL/QAZnnhlixWUDMj0fbrL13mIwmZf14FGMWZ1B6NPLJHJQEkJ5xSD6KH22IDuI3VX+r3xTcYLIu1/O9hTyYQnXzVxK8W0Yhz2xI+uMio709LNQrUXyj/tmmaPEhqJNJ4I0wwrrOx7U3LMSs/NSJNdxG9MOB6Wphypee0rP8eUgfE4Lh+3p2SBWlxE271m7S4VhTWjCuXsp+s35aR7lj8yGDzBWdG3Sg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UJUu463f23ohZqqHp/D5EAwaqO09+223Nf4SOKut8Gc=; b=RxGehzo78OA3wOGte3cVGytNL8HnSlSG06q8mZbePJNfJHE/de4mveUO1jsgk5G/AQe0f2TUgHlfp8tkOKwkpX64/FpjL+gqeQTw10Uzrp7AJmVzQCj5Z1bC92059R5zh1y8XM3d4w5+dH18emIqpT+LnpRXbEj9KT1OksKQWLM= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by DS7PR10MB7177.namprd10.prod.outlook.com (2603:10b6:8:e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:57 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:57 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Masami Hiramatsu Subject: [PATCH v2 31/35] tracing: support lazy resched Date: Mon, 27 May 2024 17:35:17 -0700 Message-Id: <20240528003521.979836-32-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW3PR06CA0026.namprd06.prod.outlook.com (2603:10b6:303:2a::31) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|DS7PR10MB7177:EE_ X-MS-Office365-Filtering-Correlation-Id: 6834cd4f-13b5-4913-7c69-08dc7eae47cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|7416005|1800799015|376005|366007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?GprEolY5ushbyt7nIjpFV0556VH32aTL2sy/ww6JesV92BCUff54j0vbGxP4?= =?us-ascii?Q?4fhCrnCEAA0dDoiKY1JPlLJDB7VcvciafsDvmgvffTViYG8eYBvdl1KaJHV0?= =?us-ascii?Q?ENnoYzlmM0YRkGUMbo+BkMOr2hhJRsoRapTqxCOLqXtqh68vujBXng5E+z4l?= =?us-ascii?Q?0q0v6dn5/tFueKgs9S+GhUMe54Q6M/SkH6hIV1OZ0MnZrtzxygpj7tzGp3GY?= =?us-ascii?Q?F2AY/FJ7SETLNYsQFzCt2cHjn80M5vXygI/0DQrcjgqh9ke95ewg1qBXRJOE?= =?us-ascii?Q?Br/XY87viPEnX8cVbync+WHRZ+9CYFztKD5GxbY0xQOpeRe9RqzeyFwLwv5+?= =?us-ascii?Q?CQ639cpQfI+Y2rrfQNiDrlSI52pee2RnOcaYXzQwOLset6psbllnr6YgG99I?= =?us-ascii?Q?szCxLH2vf9yod6IDwrPSq3490XkEiVs+hoP2EHZMvi29nbMYDf6X8y5KuPI8?= =?us-ascii?Q?3OrDufN8tKmkhoJrt/5HcSoH1dRJ72s3DmyhUW2xRaAi3B3SxoD8I15VNLmg?= =?us-ascii?Q?tgupzWVAAI2iY9wv8tu79/TQhDVkPfzKFWOhufqve76gUNCO6gXrk/VqZvpS?= =?us-ascii?Q?57dwnz0uh14OvVrA46MSe+N6kANnf9Ap7dhPDK19JtMqqT1L62eq48IOSRq8?= =?us-ascii?Q?HEj5RgYsW2gYOkU5jKbNtoBnuxqD4YlHtoczTDPu7K7X9wDRJbZMeXrikwN7?= =?us-ascii?Q?+gpUOcZh2Jbsz6lzFhwwavQjZ2RLhlP2x4RUm7JIaLPDptJPUQBNURYspolA?= =?us-ascii?Q?WfsM+jh8Uy1zuvBUbUaBBm9imompPS33YYafeGQ+XYdx4yXSk0fGvdukD3zJ?= =?us-ascii?Q?7PG33IKkKodliP9VjBvuhSYhg0nL17bOo4l9fbOqOc5Y51b+KGpjfVw1Plvb?= =?us-ascii?Q?nVwPY6WD+MEMbLkfScy/9hp+EGU/nWCjC/8+Grj7BuytQU+fEwqK8H5dCSnc?= =?us-ascii?Q?m7leTv8e1gDkIXb1fiDflKLHLfBRHAjcQHiXiOYuKotKeCRe4G7fSnijzxat?= =?us-ascii?Q?9cmw4zA6rzCXXDmSeprXgrTpDXlMXM/R75GMnPv9hDejFjnu+sZ37LVz6oaM?= =?us-ascii?Q?HIQUVpIKJvbb+L67qSJ9Oy5CMxdBA9VXmYLH8lybky8RzaDh1+JM20WNOrn7?= =?us-ascii?Q?dm+ETNgkZVtm1U6qk+ASaN6Kbge0YdtnlLcBZz1wCfM7myic1zHa1bHuvdp3?= =?us-ascii?Q?OtJNjceIEZQiBnx9Y9E0d9d7aV2iVx/mdUbjkElJ68ziqzA0pRKx1axbKnQ?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7416005)(1800799015)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?taBzYBcKW1jcV55NTYudUFlUW3fO/TIqm0Ih1GKiQadlTL4U6eaiXY5fGJCN?= =?us-ascii?Q?oDYZ9cR0PURlxTENyq8kzXqUCaJnVc/c5ra6ZTJ1SE6Ev5CGjGJrd1vhDyrP?= =?us-ascii?Q?2MOedb8IYVi5eq3KksoT5a96hEa7aEUEwblff/6esAqfsENwaBACswxWX8UQ?= =?us-ascii?Q?QlCj4x5qAw+VR0UhIBuwfmFgs7czPnFelQATPdQwJcrzpMk9d6cnryQmGjDl?= =?us-ascii?Q?eQ7MW+shNb07kNIxQ0ljraUlJdk7DxEpv/29zeLGCeJhw5tPlnqG+o2JPrrx?= =?us-ascii?Q?MSaWUbE+hcDNqwNZ6XZqeOVzNJJNG1zUGzm0F7yqp/8YYbdCJdb4UFWFKNBV?= =?us-ascii?Q?vCmJ5uOFrsgm6m9I7VXhRXNatjss/mRWLGpO0yUgtraStCQHmKKR1sUzo4/g?= =?us-ascii?Q?WqzV0hwA9EeGmeZ4k9t09UWdfrh9m0a8G6HaRFyGgFPVUOUqFuG3bM7WICLS?= =?us-ascii?Q?TCcMgeZyYpiXEQpQpouj9RAGA00TmsPOSBz8lSAcfdu1ngkc+eesTp+boFwF?= =?us-ascii?Q?CbVvP+I+emrZZeDp4kACGtZ1LnzhofQQo+kXoU3qGkyZKU9oOJk5L4LahYwH?= =?us-ascii?Q?6dilouZwoXSN8lakMZNFtNWXoA3a3FRn2ZoH1Htvc30jIV/xv4cY9diNU7Ae?= =?us-ascii?Q?Vy1XPvP6/MI0xgEoLjhlXzKQg8cQ7eGenIAMfOJ5CWGUEMQS+xb1w2wEzRcq?= =?us-ascii?Q?/aLHyEvwiEFG7JtxbRtY4YcQJsmkoy1uOwEdXoj0dR2zDPTumDrpna6YJtE5?= =?us-ascii?Q?OKztTulGmxD+QJqv/deKUL2TvdhgSWuWfkVmGO5DJrKbDRRRcl/Kc4Kqi1u2?= =?us-ascii?Q?HXXQvyC4CWwrf3yqLpCDgOlMDMwa+fZTyEbSyfoL5fHfNK+Lt+FdRQMraqel?= =?us-ascii?Q?UMFUJSuSUiwuiomutmkNr/VbYbqwdvzuqVgk3BOvfHSbrWYBXqrjj0mpapmD?= =?us-ascii?Q?zJlq0UMiXn3282PJqfVpQjnoGJb37TF1prpypUMok9IG/jFP/UFTB3tQKpmH?= =?us-ascii?Q?Ps4TU79hVQ342wVvEbBw/BMu8fZVO9CY3/aljF2dzk4YmyV6s6UlunvEjDmg?= =?us-ascii?Q?pSS++PRD8SAaHMWCVLNfn2tjDhqlyLmxRxkewfz7Cm1koT27MPL2TsAp+/yi?= =?us-ascii?Q?+FiBShPueRHxaNEyp0mB7kPs2r8wLiZm6MC2P1bmZLrxuFyEzYPCBuuwDxyr?= =?us-ascii?Q?Jy5A6ev11+SNInjHqHhZsR/GjxxE1VZDEu9XQ4sypdTnHC+G0bWN/F5ygMkj?= =?us-ascii?Q?FsV3ZIztrqbP/nq+oEwuLyld8x/9BAWGahzDsHI9cjlW4yLlwZH5kclBHqkT?= =?us-ascii?Q?r4PstlSoB29cThYIVFd4ZIx7KXdSx+ffjoF1DPUFYQMNpwSnsPPuqJSjOa2U?= =?us-ascii?Q?WFxYrspOKidG/C+sK6loWRHnhp0eW4jk/wduxenn4ZBciZUnd9zBq+cMHFc+?= =?us-ascii?Q?iZ+BSwdI+NSrFAt+sQZ9DO3JyFW8Ok4Wf6wTyWUP9woSa+FZdArgKCwgM/MZ?= =?us-ascii?Q?MMrgG4LqsmhopgSNdnJm5zUWZuta5yrHIpraJ4c7tiDZBeCLtEwrny4RBAGg?= =?us-ascii?Q?VTbxMRk0KeHTFMHRrxqEV5S3ndP9Sxtp6Cmo7WySL3PkuTzb8c6WX6MDUJcn?= =?us-ascii?Q?sQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: q2+Dqck73u57lG2xDieVLhCz+RYQ2fy2DeXlfyXBVPs96Y/uKqXpAvTwjN7oB9s3DwP3Ds/w17ewET9z2MmX38+zOmgjaN4fNT0aImbWbvMJvqc5l6x6QMavLzNPiimS0zbwu8dyDkC2495ji4CDqRSog0CwXQ42CKV1LMVdwLlbAA7a6/k7i+dozwJIiigyXgwSBQeAAmXJyxDSWIqqYnEbDONaiDss0/Frlqi9zmN36hr4XQV912riwti9DQOxjFk178OdJn2zL9dodNMuSZFG3lKv26WIrRyFcXGISjRGEYpnHdGb5Octb1lAXRvqbZTzuWJe0Quo4wmWfWIwrukHLwPpoWpqAcEO3IhLsU6Ba5SC9s8Vo6S676BA+MtNc1nanab8yusDpCsE46uh3psU8/Jgk+B9s739usLywI6yD2p1KnMv3Peb+gGIfA46Mjjmh/KnG1uNdhj2Qm6YCH8fz9I0HxAJqP8rWggrdHTmetvCBqhzj6FSvcaB0aMoaa/+I7mUoSpLSbjILskB022btLO9pMljeA1HIB7xKxrsZN+LBVYdlDeUGsFbePc/UdtCMi6pbjH2PaS24HUXgrqQTirNR1PthlnDlaBkWh8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6834cd4f-13b5-4913-7c69-08dc7eae47cd X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:57.4762 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6tctMxPcMx2p3iZPLwE9eBwGDDTxjMs9VDb/S4837oqaxB7ORh3BeQ/FZC0LQoEiCjFEdswoJu/d6Wh2V17dUIXnCGnzoHf0ILEB3oixzzg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7177 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: ImPh37L3gM42hIsA3r3nIuZMnMNuw8mg X-Proofpoint-ORIG-GUID: ImPh37L3gM42hIsA3r3nIuZMnMNuw8mg Content-Type: text/plain; charset="utf-8" trace_entry::flags is full, so reuse the TRACE_FLAG_IRQS_NOSUPPORT bit for this. The flag is safe to reuse since it is only used in old archs that don't support lockdep irq tracing. Also, now that we have a variety of need-resched combinations, document these in the tracing headers. Cc: Steven Rostedt Cc: Masami Hiramatsu Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- include/linux/trace_events.h | 6 +++--- kernel/trace/trace.c | 28 ++++++++++++++++++---------- kernel/trace/trace_output.c | 16 ++++++++++++++-- 3 files changed, 35 insertions(+), 15 deletions(-) diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h index 6f9bdfb09d1d..329002785b4d 100644 --- a/include/linux/trace_events.h +++ b/include/linux/trace_events.h @@ -184,7 +184,7 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs= _status); =20 enum trace_flag_type { TRACE_FLAG_IRQS_OFF =3D 0x01, - TRACE_FLAG_IRQS_NOSUPPORT =3D 0x02, + TRACE_FLAG_NEED_RESCHED_LAZY =3D 0x02, TRACE_FLAG_NEED_RESCHED =3D 0x04, TRACE_FLAG_HARDIRQ =3D 0x08, TRACE_FLAG_SOFTIRQ =3D 0x10, @@ -211,11 +211,11 @@ static inline unsigned int tracing_gen_ctx(void) =20 static inline unsigned int tracing_gen_ctx_flags(unsigned long irqflags) { - return tracing_gen_ctx_irq_test(TRACE_FLAG_IRQS_NOSUPPORT); + return tracing_gen_ctx_irq_test(0); } static inline unsigned int tracing_gen_ctx(void) { - return tracing_gen_ctx_irq_test(TRACE_FLAG_IRQS_NOSUPPORT); + return tracing_gen_ctx_irq_test(0); } #endif =20 diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index ed229527be05..7941e9ec979a 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -2513,6 +2513,8 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int ir= qs_status) =20 if (__tif_need_resched(RESCHED_NOW)) trace_flags |=3D TRACE_FLAG_NEED_RESCHED; + if (__tif_need_resched(RESCHED_LAZY)) + trace_flags |=3D TRACE_FLAG_NEED_RESCHED_LAZY; if (test_preempt_need_resched()) trace_flags |=3D TRACE_FLAG_PREEMPT_RESCHED; return (trace_flags << 16) | (min_t(unsigned int, pc & 0xff, 0xf)) | @@ -4096,17 +4098,23 @@ unsigned long trace_total_entries(struct trace_arra= y *tr) return entries; } =20 +#ifdef CONFIG_PREEMPT_AUTO +#define NR_LEGEND "l: lazy, n: now, p: preempt, b: l|n, L: l|p, N: n|p, B:= l|n|p" +#else +#define NR_LEGEND "n: now, p: preempt, N: n|p" +#endif + static void print_lat_help_header(struct seq_file *m) { - seq_puts(m, "# _------=3D> CPU# \n" - "# / _-----=3D> irqs-off/BH-disabled\n" - "# | / _----=3D> need-resched \n" - "# || / _---=3D> hardirq/softirq \n" - "# ||| / _--=3D> preempt-depth \n" - "# |||| / _-=3D> migrate-disable \n" - "# ||||| / delay \n" - "# cmd pid |||||| time | caller \n" - "# \\ / |||||| \\ | / \n"); + seq_printf(m, "# _------=3D> CPU# \n" + "# / _-----=3D> irqs-off/BH-disabled\n" + "# | / _----=3D> need-resched ( %s ) \n" + "# || / _---=3D> hardirq/softirq \n" + "# ||| / _--=3D> preempt-depth \n" + "# |||| / _-=3D> migrate-disable \n" + "# ||||| / delay \n" + "# cmd pid |||||| time | caller \n" + "# \\ / |||||| \\ | / \n", NR_LEGEND); } =20 static void print_event_info(struct array_buffer *buf, struct seq_file *m) @@ -4141,7 +4149,7 @@ static void print_func_help_header_irq(struct array_b= uffer *buf, struct seq_file print_event_info(buf, m); =20 seq_printf(m, "# %.*s _-----=3D> irqs-off/BH-= disabled\n", prec, space); - seq_printf(m, "# %.*s / _----=3D> need-resched= \n", prec, space); + seq_printf(m, "# %.*s / _----=3D> need-resched= ( %s )\n", prec, space, NR_LEGEND); seq_printf(m, "# %.*s| / _---=3D> hardirq/soft= irq\n", prec, space); seq_printf(m, "# %.*s|| / _--=3D> preempt-dept= h\n", prec, space); seq_printf(m, "# %.*s||| / _-=3D> migrate-disa= ble\n", prec, space); diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c index d8b302d01083..4f58a196e14c 100644 --- a/kernel/trace/trace_output.c +++ b/kernel/trace/trace_output.c @@ -460,17 +460,29 @@ int trace_print_lat_fmt(struct trace_seq *s, struct t= race_entry *entry) (entry->flags & TRACE_FLAG_IRQS_OFF && bh_off) ? 'D' : (entry->flags & TRACE_FLAG_IRQS_OFF) ? 'd' : bh_off ? 'b' : - (entry->flags & TRACE_FLAG_IRQS_NOSUPPORT) ? 'X' : + !IS_ENABLED(CONFIG_TRACE_IRQFLAGS_SUPPORT) ? 'X' : '.'; =20 - switch (entry->flags & (TRACE_FLAG_NEED_RESCHED | + switch (entry->flags & (TRACE_FLAG_NEED_RESCHED | TRACE_FLAG_NEED_RESCHED= _LAZY | TRACE_FLAG_PREEMPT_RESCHED)) { + case TRACE_FLAG_NEED_RESCHED | TRACE_FLAG_NEED_RESCHED_LAZY | TRACE_FLAG_= PREEMPT_RESCHED: + need_resched =3D 'B'; + break; case TRACE_FLAG_NEED_RESCHED | TRACE_FLAG_PREEMPT_RESCHED: need_resched =3D 'N'; break; + case TRACE_FLAG_NEED_RESCHED_LAZY | TRACE_FLAG_PREEMPT_RESCHED: + need_resched =3D 'L'; + break; + case TRACE_FLAG_NEED_RESCHED | TRACE_FLAG_NEED_RESCHED_LAZY: + need_resched =3D 'b'; + break; case TRACE_FLAG_NEED_RESCHED: need_resched =3D 'n'; break; + case TRACE_FLAG_NEED_RESCHED_LAZY: + need_resched =3D 'l'; + break; case TRACE_FLAG_PREEMPT_RESCHED: need_resched =3D 'p'; break; --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 F089913CFAF for ; Tue, 28 May 2024 00:37:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856641; cv=fail; b=bwe9m35+SnlpuMU6uhDDQjkbrNFnlEL2Da9ouVsyE3SVtPsuy5F8gCUzmGT+Sl6ruAyD4wr3UJvDdbFFkXG8H8ZS1pCeGhukGsEtayorUxOeqCh3utSsVfb+WMlhNIv3MY09VLhsHtcSu1XCyiwhDOzZNQCXpalZc4kBaFuecuU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856641; c=relaxed/simple; bh=Hh7g7P3QkviaacmI8bsuKVGg/QOjNTgaUsSh4DIuSqU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=S7aTR3D3V+/kJZ2fjc3EZfOTGlTpSsffY9oro1DUPOe3Nx6mIqt9rQmAJb9REBvHvTj70O9UfhLbtf4aCY0V7Wb+8B7ar064E3N48Bt8QaPD9DkcNdMjK7LeC3rCHNAMPZeumXYpc/WfDeAQNFQnYDLyR8O2iuBa2IwmnbhHccg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RHIDdl011242; Tue, 28 May 2024 00:37:03 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3D1gzu+2Xh2YBhraKNYVXIbFY8o0B8DJKjS8/hWnD2p+M=3D;_b?= =?UTF-8?Q?=3DkOkDt3ztO8DaEwgd4JiGpUAIfJ7B3CylFmDu+wywuzsDD/vxk8bOLIsf7gkw?= =?UTF-8?Q?SREYOV/y_UTQfmPlElSrCQKapNzPeMjMJPF9h6Tf+aT5JqJLIet8NUcAWUtwYe0?= =?UTF-8?Q?Fy5+6e5521q7OX_jeDiSMnKIocnx6BUIKMfxZeA+5j9TWN9CSzxuS7fZHgEGp0d?= =?UTF-8?Q?s8bhqyyYgoc3mPnJFG6X_vCOK5BR2zZrnysELC7faduEcnRZVm6jwORHpoX4qn2?= =?UTF-8?Q?kk174h3joaaSwn3zCUaoXuz+lY_pSnwiomZBZ7psmu5Ww2WebXL6Q6Lqa2xs5OI?= =?UTF-8?Q?FjjSgOoWWjTjgzcvYrCdxOwm0yIw0ZtT_hQ=3D=3D_?= Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hu39em-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:02 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLwlok025981; Tue, 28 May 2024 00:37:02 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2170.outbound.protection.outlook.com [104.47.58.170]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50p7y3e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:02 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VlFOy2dcKa1TfWm/RRiFTEcTl5X13QCsMbBOt+/oE1YjqM5rouLBJUrCgCkvWyOecs9afWf/SXxbj3BF5UmRtjMGcfoWQi+c6cdR+mYHTwmAsSeuJS1mErddnOWb9XW2QfMAsDx/pVnjCAAe5r1zMHxJ3BWgJfnNAZHnteiht66ec93Qua9uj2PtnHrEVRWENEUrBwLFvNQ5QuGHAS/rBxRABu5ug0RrpbCwKZd8pniyGcnK3KmqOkVE///pRyMqDiGdFDJdc7Z4iOglbuGSFjWJwpqS5mhoiZEKpNIVQoTUs0P02r0B4a6qKJesZKsmqHy/picTEnOOHQt+XGVI/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1gzu+2Xh2YBhraKNYVXIbFY8o0B8DJKjS8/hWnD2p+M=; b=Qv9IFM91kSAJKf8ewp7q9qXZkONc20FBYzDlQK5ck8SFpu9fIChf8Q6ti5q8grCiBBLeuUpe5tzNLWPJVp8hxIzBUW4m7dQil04p0PlElpjXmNNJBExxDLrXYoanQv/tbu9MW+dbfJvmbwoOMeyeFYPK6MGSL+7mpYYesEhs5jjcKbRzmqdJN6sOWnp6yVFw5Og+PAm5XTTehDM6UkqmuvtvBu7xrs6ZdG8OLyJROoIQQ9YMT0nmhR3CaYenLyz9Z5SJu9YajqG+kNp4ECRpjZ2fNpe1cvQ1ndujVvG6hytTm1pfqzFerE9DzYHDXCoZv0NxuKj+IEcxdIcrV5CzqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1gzu+2Xh2YBhraKNYVXIbFY8o0B8DJKjS8/hWnD2p+M=; b=YkXUZyHhryWVlJHUYERv4tX7IF/1rh9/xRnBHQubBCR3NxHdGmg6ypRm4Xu+spJqReEoGEE7AHgSLmRhfjxYb4+XJs05Wt9VVewRAwN2vUr5AS4Dlv8dUVHuEaTpABYuR0frrNFBOAu0UkunwuV22w1dc2Hdedy1zFWTFa+gvco= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by BN0PR10MB5077.namprd10.prod.outlook.com (2603:10b6:408:12e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:36:59 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:36:58 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Masami Hiramatsu , Jonathan Corbet Subject: [PATCH v2 32/35] Documentation: tracing: add TIF_NEED_RESCHED_LAZY Date: Mon, 27 May 2024 17:35:18 -0700 Message-Id: <20240528003521.979836-33-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW3PR06CA0015.namprd06.prod.outlook.com (2603:10b6:303:2a::20) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|BN0PR10MB5077:EE_ X-MS-Office365-Filtering-Correlation-Id: 383da980-9564-4977-a8cc-08dc7eae4885 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|1800799015|376005|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?QQ9dYzj3Thcdubgll45VYMp2BXTCTkvD7VpNR85xZwpTwjpC3KLcFChlWFKn?= =?us-ascii?Q?BjWJDbGEk2Wi6jRejUf1aW8+g7bGfc+bYj2DS3MUib3xr/fItK9E6+siT6Zn?= =?us-ascii?Q?cHprhlRzGyBwz3LUAhMdbCj1mfCp61yV1UUNJLN0RR9NKgzGySXF0spZHnxL?= =?us-ascii?Q?3mPdz65hyh2lFjhf5l7VzCXLU6iIEkMKJhiMgF51RcTSLniKr/+t+BHAVFhr?= =?us-ascii?Q?eXTZ7Q07+0Xf9XKWfrZryALGfF7RzvRJNNK0KOtL17TYQ44dsSl/AcpyU8cn?= =?us-ascii?Q?1B4Nms1ij8RmS6p0ZXf7W6x+659pmCEyK2AD7bJ9p7DTVpyEHpf2qMnUnAK1?= =?us-ascii?Q?JU85u1z5gSv9N2+j7qkmCBdjET+O5D5W0zrYeZzBo+YjOCsCexQ/Tu1jHP0p?= =?us-ascii?Q?wVMfiDd3JhpzSs8Z6Ps+sMtlcfbgUZhi5RHVnZFwZ2ItBqY6wc2jdFWJxQy0?= =?us-ascii?Q?GTHfE/Cz5mlxQXS4/TaaugI0wHJihV0+Zz/7S3VsCovfeoZOZNjEKLPBJtDa?= =?us-ascii?Q?3f4zFETsVv5nfJ9OvITur+gvn0Gy/HOFwSJA323t61sP16LU6+YkC13wfKHU?= =?us-ascii?Q?ihOWpq6TeAO5bIQ9/2btnhJNY1MESWxgzd33gwn2Lsn3KVPGM8h6Ss7DuF7l?= =?us-ascii?Q?x1LOVorPqoGXaxdEvahxOLQASl3DUe2g3WNHxkULF4TBZ29J8cQrW4jZifs5?= =?us-ascii?Q?2WTq3GRGuQdYg3OQZDLWp3khTRrjqJ8POeL7qIOg00AAy6/y/8i8adYJ0jaz?= =?us-ascii?Q?3tyUiR7SQQihGgD0z0XF4G/jv9idYqwibUgYtoEgNMBUnPL48PHPTR382yr3?= =?us-ascii?Q?M2R5yiXxYfQxFlY0Dc1TE//SGtEoDtuX7Nk8qxHeYBgb3jIheNSbCtida8C3?= =?us-ascii?Q?VNB511JsfS0L8Jl7JzLgpu7UvfOUsr/H0PV6KZmgKxxGgTmhwjF/14SIz9Fc?= =?us-ascii?Q?aJVBjZnD75j2h+/Xbg60LQ7tbYDQKZUVQsJkUJwxwiECw+7KWXRq5YadqlpN?= =?us-ascii?Q?FTK+BqcX+2SpSHj5MLKkDXsxTEk1lOxPJywU8qmtBJGPtmO0o+VdtZa7Z+eD?= =?us-ascii?Q?2oY5zPMam+EY6M3LrZP6mmd1zoQ6Xfk8cDP88OfZ3PWisr7q/71Ab2gKES6j?= =?us-ascii?Q?j+UtiDBQdNKyLwWHABrBpbiXFtxGDbgcFeUzxt1JObvD9zoc2OUuOht7FWDo?= =?us-ascii?Q?UjEeNkH3vEIqUNUFL0qARk+P2CSDO46oFPAouvDxKJG6dBMt3Rsb9YIDrOg?= =?us-ascii?Q?=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uPV+rHm66OLQW/U9bBTJorP5EigrkDb0qgFCr9DamsXoHsOxBnBAgCTRMZCj?= =?us-ascii?Q?Q/WTi48HB4aTY/hm/0PweeSoIIDOiDpPw7emQVW1rx8ORdJxh9FsYcxdtzIa?= =?us-ascii?Q?xar12tnmZEok7sJwEL1kzXBdO92dgbF+6DbVDqXu+WWENEePUdqCmI8z08ZR?= =?us-ascii?Q?JEw9hM33axsyjsQlBnGeeN5Su2B6W5Y9FoystXlGHLhcDUm4O14MkvSEa9/W?= =?us-ascii?Q?xOY4RTwOGMBMWR8qYhuTls1WufTQqqurBRcWNhEFUak+j+iwc/uJKI5FBNz8?= =?us-ascii?Q?sFK0OHu25oqB5Qn0yNWYau5BHWBq2HHdPI9fIVpJ/MIUNYYXYUQEWGIN6qcS?= =?us-ascii?Q?nlffYlYyz0nAZcmWFRgzkNIIGdO1/qZ4UkZOyz20uyGsAXIlVvRgLpvFbPpg?= =?us-ascii?Q?R75B/TsPYwgdzIDlP3uD1TCg8ZEUe2XMPzibIR5ZeBJbSkkpo2Gq7JxYEMjV?= =?us-ascii?Q?mPeh5elDsAYgyXPgTRC7lsQ0STOjlT0hntIJYssNrsk6bjW44i+tLxXpUVot?= =?us-ascii?Q?T0R3A2sCgMCRQYaRKkcYres1x0aKC0fR1tf9Zg08WFGWqm2deUYtdufGN+l3?= =?us-ascii?Q?9PfB/bG8VMKiloX9FqEL6/LqscKrRJfBmX+kUPsdkBKBmom3lpPb+1B92Zx4?= =?us-ascii?Q?D94QsqAuRDxyOl5OD2G5DOQpSTxO4/EF4t3Kdz6LzZG5wp/Rfxq4OzXaGg/M?= =?us-ascii?Q?1Jc6iN4ZVwrEtG3EW6b3ikbftkMIwnmXaxcGQNQRKZiatZTCAjzwfA9bL50G?= =?us-ascii?Q?vSu3qdJxkv3mTfWYRvkLLoHtxXWfuUEuRqcBzLFZR1ANlWdM0NLU8NRQk2IJ?= =?us-ascii?Q?7dlF9Xs8bz/etFyIg5yk09FSdjHoKZbA1GzEYi+4RLpcqJWdJFw9Heb8vwH8?= =?us-ascii?Q?myev6imevsoo5ecKpZfcE/nLululA4aKasS0q6x+OFxtYRnBpXVvm2yuf90j?= =?us-ascii?Q?qJL6Ami2SGQeORy0CTXvK+Ec+IW1ztYcKo5FCl3S+RYuL10vFiQ5MbkG13Dd?= =?us-ascii?Q?Pt72buJllpcW6f0wmZfHP/zS3gip+9/yuJPABIbi4KrTfx0z88DRII4KFnZf?= =?us-ascii?Q?zu1nIn4XOF5qqRmvh5BtByS77g5fcCQjUfu0KRhj3p6DlbBQIkFOQsbP8FhU?= =?us-ascii?Q?g8XkgdmRnoHEldMhce6bWczJIjSHjxJIeRXl2xoy0p9iflGXyxryzwOQaR9A?= =?us-ascii?Q?MkhhRdrRcdEmHrEHcd1j7CmfZ4ui+CKIeUpCL403zVziCO/uDVZlx2VDku1J?= =?us-ascii?Q?OcRJocc3P+yZeATf2XkvZeKDkYiZc3+ZBIzNreGt70ZWjnjZ0Si2Gk6wCnYr?= =?us-ascii?Q?lRxVOZ8CnMp5RsfGNwfacaJFdrnKb3GaQ+8tE+pDhFXueQTJ3jxfQcVfNxGG?= =?us-ascii?Q?KFaRNeoGbLdiBpUBsWpXKyCChbf7ECJLyarDm5UU062qX0xLj6hmXoPyv+3o?= =?us-ascii?Q?YQr3AcKWo3AK+Dusy1pnEgYempUil0ReU26VQshRH17W8XpLBuPlOs/3iL67?= =?us-ascii?Q?YNig+FxYi+k1nr5KqfzyOlE9GvFgdithOUYDHILgyJD13L1EhRKOE7CHOaUu?= =?us-ascii?Q?kc/Xx3RHULpRuCm1BORz4nbeFqRHzWxBq7xerJbZxPMAofszRwikvqh+aM/R?= =?us-ascii?Q?HQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: mDE18V+hpelZC1UTy37OiXAIimqGO0lWDApd5GOtL1nchWkLL7GGTIT5gL9Lz8gCMiqPAFd5SqRKLq+kXdgQgj8rCu9pkxm+LC/dIWlkOQpLRH941oUaaAktsYKC7jd8DSVHzdPFrR3iHYmj7MMc2wI3wxrc/0dOzql9Q4MQgKCtTt8Hvmsz/3m+jumtNgcCJ3/Srv1X4TRLpU4lDALM2FGBzpD4oi4wCXS4PTOlzweWcKwMIy8UggqqWWFuj2ul5xYT5av+jj9K9wszBf/k4WDe2AwFsceCWRXeazWMNIqb5/FlOw7eq+uU4Xfb7ym8Yl96tuqiKDANALSnHkIWFQ/DSWE7xvHCnwOVs9Nvhc6ou8/h56rlMCyDXnn5c5Il3tWuKhCMaum0CS6IDtNEOvEY/557lskSXIFwj9VOYezYGq7uwpMWMfQa75KtrDT6cXvFGm0CWUg3StyQyubJ4fywhzuBpdFz78MczT1cANdFKaUv+QK+9NetxCs2agSpgE7HjtHPPyOKjbeVriCcpsGnp/UzuTRkgu7xsQSAClH9w1hlJDkfYWSvIJNJuTQ8Lvnen5tfYocVOjDfqZvRN7thbR79uHOFdQ6Nrc+0f8c= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 383da980-9564-4977-a8cc-08dc7eae4885 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:36:58.6537 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TxcPwQuYWg0aQJ4YYu4I2LdPWMQoPWCZVmF/PCWcrDyrF45A8YFIEdA4UP6tU6/o6p6SCdXxQHSf3kuesdfDorRs5XwjEaHTENwEplprkgE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5077 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 suspectscore=0 adultscore=0 phishscore=0 malwarescore=0 mlxlogscore=862 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: kZH_przXJO-B2xpU1_v6nScRxLcS7drZ X-Proofpoint-GUID: kZH_przXJO-B2xpU1_v6nScRxLcS7drZ Content-Type: text/plain; charset="utf-8" Document various combinations of resched flags. Cc: Steven Rostedt Cc: Masami Hiramatsu Cc: Jonathan Corbet Originally-by: Thomas Gleixner Link: https://lore.kernel.org/lkml/87jzshhexi.ffs@tglx/ Signed-off-by: Ankur Arora --- Documentation/trace/ftrace.rst | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Documentation/trace/ftrace.rst b/Documentation/trace/ftrace.rst index 7e7b8ec17934..7f20c0bae009 100644 --- a/Documentation/trace/ftrace.rst +++ b/Documentation/trace/ftrace.rst @@ -1036,8 +1036,12 @@ explains which is which. be printed here. =20 need-resched: - - 'N' both TIF_NEED_RESCHED and PREEMPT_NEED_RESCHED is set, + - 'B' all three, TIF_NEED_RESCHED, TIF_NEED_RESCHED_LAZY and PREEMPT_NEED= _RESCHED are set, + - 'N' both TIF_NEED_RESCHED and PREEMPT_NEED_RESCHED are set, + - 'L' both TIF_NEED_RESCHED_LAZY and PREEMPT_NEED_RESCHED are set, + - 'b' both TIF_NEED_RESCHED and TIF_NEED_RESCHED_LAZY are set, - 'n' only TIF_NEED_RESCHED is set, + - 'l' only TIF_NEED_RESCHED_LAZY is set, - 'p' only PREEMPT_NEED_RESCHED is set, - '.' otherwise. =20 --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 C7B9713D28C for ; Tue, 28 May 2024 00:37:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856643; cv=fail; b=b6RmWV3UQHoD9RAyhQ488MP8Ja7FACJnj5+jXPpL24DEqlVKe2BOsnQ0s7XbFEYpu/Nxd4YChVgh99gl6Z0cqqlDDXy0pzi9HTwbDbCpMN91cUHOTwrJR552zjVS+XHxYmYW46u6PRc3oMa/3LZS6g1jmG33iCmrR297uaT1A1o= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856643; c=relaxed/simple; bh=UQymQ3FHMrHCr8qq/KlDPzCh7jtkWPnYrp3mrnGibxY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=UieOcgnfpwC0SJ5aeMd5Hj3+qr4OSyN6QDaTogwjrnp8BlSDMClisGutL4rMG4jSCGzPSmG3aM92wul8TPTqPXoSD5Z7DRRP6YCn9CO5kUEp51C6V4onYvdjSECpf1LvL1nN8WyitUw/0ghdiM5ZgzclrcgHcUyTqWbnn8m5Dqk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RG3wfm028624; Tue, 28 May 2024 00:37:06 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DeQd+GEynBdf6moMxtrpSIuj2hqoqf+5UWwE/kux4hv8=3D;_b?= =?UTF-8?Q?=3DeUOWuGroGOQlz1dDeed/PmIAhzI3xYHdavwLlhK+g+7R+Vt54ctcfCQH9eYl?= =?UTF-8?Q?gIHdf6bd_pOBGyIBdsQvrgY4zSXA8xHckcEdNoy21DRhEjn1PL0mDkwZd0LC9An?= =?UTF-8?Q?LB1ZR2X/zOPDBF_mfPCLVwjLG3sl/O7PuTWLDXFc1e6FVr4twX85L9PDpNiOL0b?= =?UTF-8?Q?VSNxuQdawNlF4ZrkRL1t_UCmpq/r0Mg7nDxBzLfZcwxmujU/6YFZzInU9nfkG+n?= =?UTF-8?Q?/ZTtNOhslsXyC3qlNTbMS4QZ67_GKrf4iKrWhdjhP8mr7J5ZjuaKlwyIZ0aNJKh?= =?UTF-8?Q?WnrTvVhzWHreMFkV+5nYzntn3cBfTXaP_iw=3D=3D_?= Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8j835rp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:06 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLXrYi009442; Tue, 28 May 2024 00:37:05 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2169.outbound.protection.outlook.com [104.47.58.169]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc52agcxt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kPeyHyBtSrAh91KCGWsFR3G4aRU/Ycae2YJ/p+96Flpi50CTssw2lAyZiUYJPDTf7Tlh1BkmlgmCOSUIvHm/acVb43YeYnqa59Deb8rX0n2N9LTgpaly6bnIPSo8+iqQutAXJFksL74DqCTTivOxr3BpMIswaQPK2ava7cclEg8zf540UOeeDBfwajGU7KWX/d68PqA4zn1k+9PWum/uGknwtdJPSkgBE4Qs7XUPz3Bp6+d/EH8czTiYTDdLjYtpuyhipaR1hPs3k0PvxQQEJ+9LmgmdZVQb1i/o5hKvEQ03hvOtEwVLXbcqjlslM8gNF+dHelUYUa8giYntDINdvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eQd+GEynBdf6moMxtrpSIuj2hqoqf+5UWwE/kux4hv8=; b=XLTnc8iFdqg0Q7UkNDzK4nm6TnqBtJM7dl5F+gNkVrZ1SS647aoEtWs9/GCZfAKdFEK3MHncZJAgjnh4DD14Z4uKdvcYmKnpXzeIsp6EE5FuQTEliz2BgPJhMaEFiz426w8kInZk32H1RAZnJ98ZNQdXC+X3gHx3NFG4Su38bfSwXpcAd89Bkg/YtABrFM0SVdijviBYAsDSF3JETECDYSYQM/L6UtydS9YR3He1kFYTmlOLnMSaPlUYy+F5/+QK85YaByFjtriIE/qNQQaKfLa5Po+ciCRFlImO4hEs8toBKDGjWFXjwWnvBa+xNKwa2L6hATKRxTmn8ou99qI3+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eQd+GEynBdf6moMxtrpSIuj2hqoqf+5UWwE/kux4hv8=; b=ZV6PUqmjlD9e9k86FyV0QVfxt6Z+Lyc+NaYe19EHQfwswEVO9YvGiNA5AokoISvS9jLLw4vLm1+RMzSfI2rnVTtIn2IHsalZUGtwAHgwvE2SkWkkMoFwOf7ycTkkUUZJ5Fd18AW9RYV+Y/EjS+MOk4LO833xKG6okz1iWL5W+oQ= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by BN0PR10MB5077.namprd10.prod.outlook.com (2603:10b6:408:12e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:37:04 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:37:04 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Daniel Bristot de Oliveira Subject: [PATCH v2 33/35] osnoise: handle quiescent states for PREEMPT_RCU=n, PREEMPTION=y Date: Mon, 27 May 2024 17:35:19 -0700 Message-Id: <20240528003521.979836-34-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW3PR06CA0030.namprd06.prod.outlook.com (2603:10b6:303:2a::35) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|BN0PR10MB5077:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f91236e-ae1a-40ec-3b14-08dc7eae4baf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|1800799015|376005|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?pJjkNDlf68XDA89G6ULzJ6EGiHXdnG7QGQ3rU1gX8nxcsbG9L2mi6noux3JB?= =?us-ascii?Q?NWP+VGtOlkYz7bVTbmppgfjkVtk8D0fNuhuQAWBxkDWsX6FJBwtpQpdSe/dV?= =?us-ascii?Q?BEJvcs6KC8zQD8nh5C8mjRGbUOkAyWavGvZTOHwzxNfILD/Au7VnvxueAz2I?= =?us-ascii?Q?5K3fL3g5Pj7e1vtFPOOuuTGhrzDURPy0IFQMvuJOtZYEdzCX/Q+aqxT05ZrZ?= =?us-ascii?Q?r2JdCCBd55hLbXh3ZELq2ShsCDTVpmxX6vq7xjIe1Et6jqgPDtD/Bf7LX0WF?= =?us-ascii?Q?VF+7swRvgwERexOuoAHGLtreli0wA530kcO2MQLtW1L0mCaC60HCUSkKQH//?= =?us-ascii?Q?2lqnZXL/EvFkg0hxgF05q7XCKJKu0WyMsOfWTtogcBMeeHp9Wy8q5nFL2l65?= =?us-ascii?Q?DLwewyL0ZmzEp+tLYoa2kazZNPRL5D1l9YgFHAEIjXDhOqbKKi/B1Y+dHs34?= =?us-ascii?Q?DOnTNqWNlzcxSzqqGz1+Dqa8tOhNRF3iV7PQ57QovQCzmacCn1yoIqs7PGCy?= =?us-ascii?Q?QyQ+3eTUMumoBIXkcutJUepr3oj7+Ud8E051yUcyv4ViyaDxjM+lLwoL+1la?= =?us-ascii?Q?Hvkg4p7KiTz5siwMklURbUJzsRg+rIw9rZ2IXYvjrNznkGnC2P6v3IKj4PJ9?= =?us-ascii?Q?T5jRhf5S1YHWb+7ZvsDOHC4OTSpAxSIvmRt9abc0qi65UdVsJZ8aHczx9VJq?= =?us-ascii?Q?K0LBnXSK2XhuYZsI9+7HeUx+7L1pjjUBZARMg6XfeoLxCBc3DL2/GIp/IysC?= =?us-ascii?Q?J2aXTA1gfKsn/rQGkZDPH+EPQPuyNV3XfP4j4Q42jJAMFGFuiYA/ZXSsh5Yd?= =?us-ascii?Q?s88HLeBjH6PeONraIixwnG6F9sjxKpruleSZBmam/GoZ6xRV9aAA6kALCUti?= =?us-ascii?Q?JezU8p6/TuIPxesBoYUrYsGzaMUW8OVDi1P4JRxu6N9DW2u51o5VTNqaMPA5?= =?us-ascii?Q?Te0te01K1FmJwF/wKVUal1wpLfB7fNPK8NWYw+CeSiTQxOePaRcL1/v+y/U5?= =?us-ascii?Q?Ky9ZvCb6iTTQ14+MHHGjxFPtolh/B0xVUp//WINQ+ROsHLTZd6ZhCEu+A70k?= =?us-ascii?Q?B/jVw6nNxfFTq4D8rEtXiX1vfEPJY8x30CX5pCz8XbbIs6Rn3DGf/QoWlVUD?= =?us-ascii?Q?SN1EeL9oJqNwsPcfmgbMj8wEVW+sY/tX5nWH5Ec+/WEknIPQBQXedCzTze7N?= =?us-ascii?Q?nVgkamQYeXSW28f7ZEpPbX/fQXlC4zEZplCtY0CX5gT87IbOwPBg+JmpX5Kg?= =?us-ascii?Q?45orJZ9uAF0NsoxiQmDVvpweJegUmaOWL1Wz8NKZ4A=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?+a086Osm1ae12R0HP/F5Wv1tfnEY2L0+zKa9mOBdtWVY/vJF/ZBDX1nArCA5?= =?us-ascii?Q?pv2++hfSjhGjsWKozC0axk5ERkqy8GnEv8kO/ZWM5O6yzC+zIJuUQ81+2pFl?= =?us-ascii?Q?Bq5yEjbiwDn2mOonsOcUZ/cINzDkSBNBrBsXsu85twK5A8USZhQSI7XNA4kt?= =?us-ascii?Q?5u96CJYLTaxGZnxQDmwCnzbvkRidpEgw6xRXmbauGWhvrD/UMY0JysCAe4kN?= =?us-ascii?Q?9ABb7mZAy4RmSjQdLEya8ZDPtMUI5X95NEFFfsmcBoyuBmo9IJaLw4FtXRn3?= =?us-ascii?Q?Di8UfR0eGX5HbWDEHx6gsvE/R2UrZqw35YKzC+Bk4ckQp4IUma1IjbqUGlgB?= =?us-ascii?Q?II6tRHDjWWpFV5ZKQS/XJ4r2+QCH/Q4103nbY+L3N5xdZTHMotAYVwJXwOh9?= =?us-ascii?Q?owPc8X1WQxXawuxSdC7pFzsy9TVLgqEm7HXgySFBMKHwQwLIyqoF+z3o8B6P?= =?us-ascii?Q?zwZymdb9LrP+NdS/Y8vzq5+h6bo0NS7CxCHwNpgVTRLWnG2capYMqtO13pxv?= =?us-ascii?Q?v78BQtDZz10vrVYilHH0gCF6sdEGDZew43VcBR63hOubTstlvOC/AYGKNzmn?= =?us-ascii?Q?UAfcEc7QWMcZWVcZI75pVOTeai0OZ20ycz6wAPpPl2AZcktQUF4/F+b+9u6F?= =?us-ascii?Q?qxyiUjEkWDJ8VtpbfhczHZxy6N7x9j2z7Wdd9LFQVYwrp8eKl5Vjr2xzq0pe?= =?us-ascii?Q?ak+o3tIj2cvDARjuoOwfF6r0M2OV4AmWUuIvu4CWcyy/C9/ePDU3vEdE9w+E?= =?us-ascii?Q?W1WDFep3PnNEK/sZ+tSgIVZg7KC1tBNHMFN0wJWg7bJ97mPLXqGyohSiKmUV?= =?us-ascii?Q?E2nbzIoRbRrMPiPr8h/d3j8LMBI31mIlYybwLdtA9Yvn9ZKJw3E+wDgMUvSD?= =?us-ascii?Q?IIHofvXiTiJbt70XY65PLB3QYylXinI6g952Bhgnri4nHUXqufrXOhSRy4GC?= =?us-ascii?Q?DuzdsIBOaj/vat7nrHbwZbcGLC0OR73U1HQsrS7GI3s55/8AWjB7EbCEJjjQ?= =?us-ascii?Q?UMkD9EEQIBq9eCGYEDU7oJT7g6PyZHLY6Hejq4LqkuXNu9T5vtzbms6GPo2Y?= =?us-ascii?Q?8NOmOjHId1JvSYlIsWQ2YsgOzJIHXZwH2VRm4g+two61o/aDH0JRocQ5KyOL?= =?us-ascii?Q?dFbEBRPApgUMTQKvUjXt5pCsX5Vfj5Frl5iFN0xbpswD8SPozv18Py4f/2SC?= =?us-ascii?Q?iKZSqj6weV/Nh46jsS5bSZK6ZxWZcpczNuJ7XmXdGU0xrADLa80I6uhkC0wX?= =?us-ascii?Q?dFNBj+jP0ZUiqWpdP0h8U6VHcuR9x+ZoTVdOnwi9GBqVjwo5U3AjRlNGAyuv?= =?us-ascii?Q?33Cqng/hBUBRxfGEfGwT/4dvH/m2/QQaXmqWqD9wZmV5bitrOuR5B9nsOtN9?= =?us-ascii?Q?p3bozQuFJ8XsSkcv+a71bohDOHyKZQGjrUst/HML1iPYMipNQz2K8LSxaJWm?= =?us-ascii?Q?T6HiZ2OOitYEpeRbhuk7PZz55GSV75KpI4QtpgOsKmUVxMbM6mW33tpMMTyu?= =?us-ascii?Q?rsh/gTU6qon5OcO2kt92PnTfr6NSgmdIm/t61ecyekhbeg4zUzuakqqZwe7w?= =?us-ascii?Q?m1Ea3bqZPO16WGG7Bww2NXF2dp05rUhHPk0EK97fqC6EDSJRsQYE5DyhOkI8?= =?us-ascii?Q?rA=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: fAa/MlAo8J/QMKl2HABX96609OE963M0+QlYqnc78ZnWa27wXp/gvhGxe2Bqh7CXtU2ETFjJruqsHSZ47B8LnUfMEZKsVz4X/gsOQfgD1VekURcjngjQED4YTXj5nNYhJckgFwysI28Bb0IzatzVCFfFP8YI9i6j08YdDqjkNCdPs6eoCSvi+UyuN3StRTpg/qz1RxPW0efajh3P17SCVoxf/iI6YiISPqmyW+tn28k9V0KJOTkYHq2PLpf9zxhvQjJR2A0c2YGivCttnZwjQs4+ARCa0qQne5Ie4OYg5rF3KjUX7tAGncIa2BH/GFTiT9bKbHYMpXWAxfffx51EwIb2Fdz88PNqb4g21S6OWna7j5I2iS2JS7Wf13qDYSuPPAABailcXlkS7aTatK6C4VANEke+0VgobwzmyuSzm3s4NQV03xl2rGsRVxhNNrNh01CLciellw0UrTOEfJeMtY9pqNZSu9hGGKHKMKVw2FDFemcWR5KaOxWnHJXzsXRHhUpp6+rn8DeVV43TvwPzBVVUiQtQ/h5z010uxR7rjPiyBZbwHPkdrGWJEjbSHN+0Zcs+mGal4MqOHVKLWHhTdzB2FQnK+pKcvIcJIzT43OA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4f91236e-ae1a-40ec-3b14-08dc7eae4baf X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:37:04.0135 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dsqwZ4EJaVZHsDlFcEBA8qdYvo9Dh/dpBgN7lWuXR+W0SqwmUu0zBdR1uMHwjMcp9Uh1HcRcSY2E8sokM4ZPEiNWR2Obm5PV+qVbcYS5Lvk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5077 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 mlxscore=0 mlxlogscore=999 phishscore=0 spamscore=0 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: sLXRKT8sgn5yfogNLaS4xwIllEpBRT57 X-Proofpoint-GUID: sLXRKT8sgn5yfogNLaS4xwIllEpBRT57 Content-Type: text/plain; charset="utf-8" To reduce RCU noise for nohz_full configurations, osnoise depends on cond_resched() providing quiescent states for PREEMPT_RCU=3Dn configurations. And, for PREEMPT_RCU=3Dy configurations does this by directly calling rcu_momentary_dyntick_idle(). With PREEMPT_AUTO=3Dy, however, we can have configurations with (PREEMPTION=3Dy, PREEMPT_RCU=3Dn), which means neither of the above can help. Handle that by fallback to the explicit quiescent states via rcu_momentary_dyntick_idle(). Cc: Paul E. McKenney Cc: Daniel Bristot de Oliveira Cc: Steven Rostedt Suggested-by: Paul E. McKenney Signed-off-by: Ankur Arora Acked-by: Daniel Bristot de Oliveira --- kernel/trace/trace_osnoise.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/kernel/trace/trace_osnoise.c b/kernel/trace/trace_osnoise.c index a8e28f9b9271..88d2cd2593c4 100644 --- a/kernel/trace/trace_osnoise.c +++ b/kernel/trace/trace_osnoise.c @@ -1532,18 +1532,20 @@ static int run_osnoise(void) /* * In some cases, notably when running on a nohz_full CPU with * a stopped tick PREEMPT_RCU has no way to account for QSs. - * This will eventually cause unwarranted noise as PREEMPT_RCU - * will force preemption as the means of ending the current - * grace period. We avoid this problem by calling - * rcu_momentary_dyntick_idle(), which performs a zero duration - * EQS allowing PREEMPT_RCU to end the current grace period. - * This call shouldn't be wrapped inside an RCU critical - * section. + * This will eventually cause unwarranted noise as RCU forces + * preemption as the means of ending the current grace period. + * We avoid this by calling rcu_momentary_dyntick_idle(), + * which performs a zero duration EQS allowing RCU to end the + * current grace period. This call shouldn't be wrapped inside + * an RCU critical section. * - * Note that in non PREEMPT_RCU kernels QSs are handled through - * cond_resched() + * For non-PREEMPT_RCU kernels with cond_resched() (non- + * PREEMPT_AUTO configurations), QSs are handled through + * cond_resched(). For PREEMPT_AUTO kernels, we fallback to the + * zero duration QS via rcu_momentary_dyntick_idle(). */ - if (IS_ENABLED(CONFIG_PREEMPT_RCU)) { + if (IS_ENABLED(CONFIG_PREEMPT_RCU) || + (!IS_ENABLED(CONFIG_PREEMPT_RCU) && IS_ENABLED(CONFIG_PREEMPTION))) { if (!disable_irq) local_irq_disable(); =20 --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 0D2AB1E51D for ; Tue, 28 May 2024 00:37:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856678; cv=fail; b=oWSmeFE2lqyW7Q6yeA6zzoWKRyX4ZlTnP2PI3SOKD/KnTL1s2YwhGvt+1ehq+y4Ps0iaWbSOPquucxEP1PChaF+OW39qgffrGwPmJI8IRZWawU/IIb3FBFGJKiVfWg1V/1y027SKPXXwki8/ocHtOxyaAHc/0J+sr9rd0GKXhpM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856678; c=relaxed/simple; bh=Sg5CJH6t/0vj6cGCTnHNTOmhXZXdcNHC6cW5SsyLkqE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=LWEzuJIEw/FqJg8BqYw+2Q/lPMxfaSOzJ7kpefraN76Ox4h5kOsHrkxNYjpfj4zpjG4X+OGPMn7zbbCVaRE72ESyQ6ctYhwoUKf3kbwkhSy0/ZrmjiOq7HJmevhKt370ncFUDwgtzikNQ7q1nNrfiNr95tPzf3wIkVqady7iXoI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RDI41j025151; Tue, 28 May 2024 00:37:10 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DqlePcTV/pdy6LfJr6g4Q3FmG0gjdqxVZWlxc+JGUFy4=3D;_b?= =?UTF-8?Q?=3DRo+K/z6MaxVxlbo1Sp/V7SNDPdLphp74fqjgc9AwA5pfChdKyYC4B5sJYkw4?= =?UTF-8?Q?9SXvgZfT_f1kArSJHQ1rkBAY3SR24oFPFRqc/3ikOVHm0vxx5P3cEciCJYGGLM3?= =?UTF-8?Q?SW6xihRa60LFuC_nObtWk6DQDH4MurihPOgsylr3bp/mgg2mAD4fqpaLo42Milq?= =?UTF-8?Q?6ak2Itp9L7epO4mXsQAd_w2geIGOaJXC923ptegJcx1+Y7GVb5YynGjkLZgjE5Z?= =?UTF-8?Q?lkjuv6b/duXpRG11Yhzy4gbCfZ_BLYCMnxjLG48kKo2pvhR2Z9tbfyv9ljQwONI?= =?UTF-8?Q?6Wk1w3S/5lCsE+B345A5yXHM/my6QRei_Nw=3D=3D_?= Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8hg39cs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:09 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RLMQgJ036941; Tue, 28 May 2024 00:37:08 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3yc50w8d1t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:08 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cq6gVs13nooM7H2U/kznFlLb7Zibwp4Uyz1hWZyoi+vyQbvA2+f/5DK1QHhGw3tsJBaEnb3ZGdgY4fuzdX5lPF0eb8tRNfg0vgRixaP3NMmcmyGOFoJ007CyBg0PoajADuqbXgI5nu1LfiZHr5CVV+tQ6vmnBTSIY37sz+gQGN48VAuDo31zXcspZhabrIvmGahFgYy3ubKTc6QEtcLS5jMOXc4AKmkZGeuCQfd67rteGMOJ6gY5zd81XPfeaDCSgLSMSIG4/2Y54B8GBB5nczMokOekISo0V9Of8qKgPBFAxSwbBc94i5BE3F/qGoqtRG2k8kWb2pOtL8AGIJk5Sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=qlePcTV/pdy6LfJr6g4Q3FmG0gjdqxVZWlxc+JGUFy4=; b=TVsF3UKjSr169JIf+69tIPiAsS8lCDDWp/FhvqbPPEvl0muJr9FIrHjrTtZGLdDxHQEZUOB/rSl08DDS7e5hJpDTegdxwOOtB8OBgsr2k/zBFZIMYEhXP3W7GBjT6kAgPBjR1jMp86xKk/FeTr3uEHpnS5XqVrUaAacAbMA3WX+5rME5VuFoyR9sypDdwXmyMpECYoL95R2ow46DWypok53v6MRVviZ5JpQMVjTQ0Ki7BN1wPBeW2GSIfoXuKhUv9HKKUmgzZ6KuBZPfBkf+njYq024x4+38AwwbCAqMdvptbpKrrBGKEeA3oApqZe21iS5XBM/qkh66m/GOTkDeXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qlePcTV/pdy6LfJr6g4Q3FmG0gjdqxVZWlxc+JGUFy4=; b=Ly5L1pRzNvqzW5iV5yqRHX79MXkm2AsSGLMXvrNqiPZfL4J3e+irtMWORI1AIAf57iCyIofTBFCEjVTNnhtGe8usH5jdc2m7VTuB4RxApfb3j9MpQhjT/oHcMPSqAtj6d6AZm8A2652QY7kMZAhhWDtwcPO0l7G4tbqWPe30DS4= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by BN0PR10MB5077.namprd10.prod.outlook.com (2603:10b6:408:12e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:37:06 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:37:06 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Andy Lutomirski , Andrew Morton , Arnd Bergmann , Richard Henderson , Ivan Kokshaysky , Matt Turner , Brian Cain , Geert Uytterhoeven , Richard Weinberger , Anton Ivanov , Johannes Berg Subject: [PATCH v2 34/35] kconfig: decompose ARCH_NO_PREEMPT Date: Mon, 27 May 2024 17:35:20 -0700 Message-Id: <20240528003521.979836-35-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0297.namprd04.prod.outlook.com (2603:10b6:303:89::32) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|BN0PR10MB5077:EE_ X-MS-Office365-Filtering-Correlation-Id: c887cf0d-c387-4adb-1ac3-08dc7eae4d0c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|1800799015|376005|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?O3hg7myfUh1uryd2GXgKL2K7gsBNwzNq9RsN2vB2KxUZlxy/7B2t6CY2rKwg?= =?us-ascii?Q?27VQi8osCDj18v+PptBdmOXgh8mDb+vcv8wBpVSkPNl/wn55T9btdaSG/QwQ?= =?us-ascii?Q?J3kpI7RCw0MOUksjr2xGSSW+PEq11PO44EpGL7mkKRxQD8O12+ueESiIuOL3?= =?us-ascii?Q?RcpbegEEphwRoK+wOuG7OawW1aIOgpwfmuBhVwS/OxbnBqeJ/BsMDPAPTsAa?= =?us-ascii?Q?xxVpQDrJhL4vqEJqs8IW34ewWcEGC5pCJN72+wkqMqKOf7cfn1cr6wtO/xdz?= =?us-ascii?Q?+o0fZ+llN33bmDUGf0V8eghpcNKRhY9ADr/RoonrPueLTpJ+NF94JxlBnIUb?= =?us-ascii?Q?TnXt+QJLdImC2u+4oCIRve6PJUq0InrDOxVm8muWBYcPO1Imhoy836FXyaJR?= =?us-ascii?Q?8w8VHaFEIcSKHGfJyOV2gHaU0/Nj6Y+Q3Z3RacU7u+K+gKZBwvWCf2TGXMrE?= =?us-ascii?Q?hoYBlsx1LQuCMLbnXvJYTvXZfgHEveNLWAN+uNC5Trfot4dlHRMVzfh/H61M?= =?us-ascii?Q?gS63yxnXGKPW7DzqTzZdG1LfHhUJLjXgrTHcpR+Ql8cgFd6VbL2Mh20PMMYc?= =?us-ascii?Q?MxIpDh736yK/FvVJliDYTVdm0QApqQK2uPRN2f+uevOelunlGJcU7VGf741l?= =?us-ascii?Q?MRbiEehrgkNNSek5IflmIGiohJR17nnCQrOrr0FgUF5cMSxmUBb9d2xzS7Q3?= =?us-ascii?Q?7SwnZYremOUPlH8dWa8kUvhjNsLMtTaSjOvhBl8tp4YXdN8Lv13mdFy3JRgF?= =?us-ascii?Q?kayzaRU6bwVY1tLluCohAwOV7qwgx+pmc2yiWsuHYeePBS0BBFXGGGHocsyQ?= =?us-ascii?Q?H+eaT0SWmGbQ4gzlsXT6VUaS21DKL1UhpbxDAaJsAIev5eEOj21o2LJXhn4q?= =?us-ascii?Q?h8xFKezt/HmA2NfJQIz9sTdmJQxHYqNiMCA4Hg8q05gkKm4bqXQvaDbHCCX4?= =?us-ascii?Q?Btolg0wiMsNoj4oWE0ATwWSNO+DSqRmDRxTv1psHzSxA2KXrfCh1h/iIbxuy?= =?us-ascii?Q?DzkbjN6B9ZvwVc9Fv2Eu2XYOFdpu1SCjpASsxja0YjSL6FiVHTYjwwv4R1uo?= =?us-ascii?Q?N4s+V774dLM0qkJEc16xUtOeD2kGrdhCcyJRtF0jP7f7cmYrN7MIN6m4Ac7f?= =?us-ascii?Q?VKIyHPTxJT3iPsdCRGdCtA5xMeKPJiMLBzMw/jtXBQ75mkvg+IVA8ciM0W5T?= =?us-ascii?Q?MTiT2VHw9eYugYEC7dRLMfAR+1H+wJw58MDYK1mugtHyMmBTS1lrdDo1eARS?= =?us-ascii?Q?pSrhFRdslrKRZ9LcCa8/ngLbRVbg6WHTRh/NLo0TxA=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?z7pWdnlwtSBxOoQAkw1ZTqI4mHIOMJmPeoi3NJiQVaAxHPED9joh2FVRTEwz?= =?us-ascii?Q?zEe4wA6zotuyz1t85efv/6NDXLIsnSEWpeVvY9Rgb+1YwHa59Xrzuk+wNG09?= =?us-ascii?Q?pxs64o1dTWoOdANnjYX6uqxyu+8FOcvXyjM0FDP5wJJOuwRWEVSGCy1dwriS?= =?us-ascii?Q?XyNK5jLMp1zt6FTR70saDRiOi6w0iOfG+e60o306L0+TdwZzLqD4y3wHbAKV?= =?us-ascii?Q?WsdfLZkuZmsOS0iOiA7JZ0rDC/NJM+2eb1wHb1O94cn7Ekt+y8ZowedC2AiF?= =?us-ascii?Q?muOuCd5CJqw38dBeD7CNSIzIUP1XZ+WYUgrhkBaJAdB7CFgy+6uqbCEWIwih?= =?us-ascii?Q?2yMCKAPd83+9NqsN3wdp5E4BSUwuAVYYlBszTe/ZpYEOZLI1XGUt8jJa6NAR?= =?us-ascii?Q?XA/BlEoICOaufPjh3ayGSXCbR9st7zPyHXklbBGH3MUKQ5cdzN1q1y3RMEz2?= =?us-ascii?Q?XJYAMOrh4aQbyegb54EkDzgLkp54qSpBXq3bwNcRFtN63b0xpPZ/TF4aYXag?= =?us-ascii?Q?Gv3lKpjzLENwC2nPLNEqe5J9YcjhHY35stvNkRVWZkCa/8SDFBkfmHAkvN6/?= =?us-ascii?Q?kB3S5XaA5F8rdDNwCbj7Wx7BHBGBO9opja5aAl88fJY1QaCW+pTiqhE2Rq6/?= =?us-ascii?Q?wBjRS6GASQt23CS9CdWCXXH/EsrQJcDbdXo857XLobTovgFt2L4rBTIp6rN0?= =?us-ascii?Q?6cszN1KXbSaXdK22YORQTCbNB7l+P1t6wnN7opi4pKsm9bk6ByyJKBk9H2QA?= =?us-ascii?Q?6uW7h4ux/1qjrfLBEkluoq8IwIf95OFlldotGPum5nF+m5wKGJgRn3DAEJ1T?= =?us-ascii?Q?WA4MZMYaRczgHOBquzdO/HG4V1bzOFivt9fRm1L1oJMwFtJfytqNBhTH5bWt?= =?us-ascii?Q?GyJ8IsWzRegDjsQCnPjJX8lQm//DvD+oEmPurBlsJ9L6l11QlMCQ5QGRujsX?= =?us-ascii?Q?GT+RgAB1rUMuQEb/sSN+SdefFI1cf1YEV3Ba7vvd8CBELcag4dDrtpko1/MW?= =?us-ascii?Q?IrvWJNzGPuitG4WKx4hZiqrzKheO4SDXnyg2qE+QoRKQZZCupy6Lr+9/c4+P?= =?us-ascii?Q?88KNgg4sO1PM9RniIR6rhuCV9kuLCrD5nRzO/oMHfqjLGX/pbfaJmWmVgnGm?= =?us-ascii?Q?yrl4vw6feW2U9zb9wBDzFQk4Qr9Kp/SYYBIWokdDENYyW7LVFmc1Y2R6UkcI?= =?us-ascii?Q?gk845F/qonuQ52DIcfICiyomh/JFYI+LtORjS8p0CAOsvV/W7/9mqGGk0DZ8?= =?us-ascii?Q?cRKi4oq20vDHdHyk6Pze5A9rDF/gjlzxwJeY3OFR1KUnzN91EoyKegj1vnPl?= =?us-ascii?Q?kmHrr1Qf+eD5r4A4YIqxbpNBJ1y1tuBZ9r7iKggv1rb428N+hwnYTYx4Fzbv?= =?us-ascii?Q?4nMm2ID9ZnfQCtu1E8o7g6dN9Z8c8b64gwpln2bufZBmvk8Y3Hodc4nreOfS?= =?us-ascii?Q?7jdsuZaJZSQLGfRm3PxlyNNqbAa0DK32hBXm6KcRhGmY5TBEMrYP8Rmjtbs9?= =?us-ascii?Q?K185PHWYDuPoDmNUBI4koXlucMndwhKfEhGHkNTuqowgdFtjPyYBEQvTwCHF?= =?us-ascii?Q?MBeqrPP8vmoUZ5UNSDabi/hbssWjGe0o59yiAJIepoK+zIVa5TsRy/JS4x3l?= =?us-ascii?Q?iA=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0VTUKeAcDsbO4M7peSfWgKCGPIHPcDVWnKVK/62PiKlFZkLs3AWphR4WLGx5XLjfQuf2juXP1JtHiTKNSK8fH9viSxjzmaJhCPijWlxVE7EWxkaZ1wGaKGIXauT544N4kt0XnmHmGbm1M/q3PLChdLoRJst5r0topgmLSg8u6dwb/7I+mqNuAtTyG6mAZuzXTOFFtqJFmKbkBgoI/LVyDhW2l1L4RaoKV4Ig4KKx/kZ9D9wIASHQ8VW+ZcuIBg2bZnX3fEjP1qmIihWM5ESTrIEZgvU9BZRIcAx+VEGS5nx74XraIHAJ8af3McFsvsRv2SZvEOIhBSfTrh4ZDc6Y+RfJHaFZS5HMKkfODc7CtM+wVntMYFCyMMramR3y9QcHmQgMRNwG7oQNksMEZTBkXbiYY6dvBeD43dwKf+gDNFlQLOBB5yv/0KFdcKtPP2VRi3Cw9XAu3t9pAD/lbb6Swz5EjGZkjTFL7mGOv2cjz0opOsGokE9erUot1j+TTHBl6QIcpmNIxTH6JLA4sM7LQhcxlerlMky4XWQrUdrfsR6saDm4XeinebklvhowbuEpr3O5rY6DmM6jsKYcNez8ijmj4FAOPrjpHghzxl+r9xI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c887cf0d-c387-4adb-1ac3-08dc7eae4d0c X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:37:06.2961 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: CQcV/ZE1KyYNsZsOlJ3yIeBP7M5IagJT2hsl3AWcCPDNvKQlqYhclA7y/Ar21HCro+bJ/S+iMVBAI9EdVewcMuO3h+x0jkLhZPscdHDygV0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5077 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 malwarescore=0 spamscore=0 adultscore=0 mlxscore=0 phishscore=0 suspectscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-GUID: oog3KMVSqgLtjSeS5sJrqVeL22G2D-jS X-Proofpoint-ORIG-GUID: oog3KMVSqgLtjSeS5sJrqVeL22G2D-jS Content-Type: text/plain; charset="utf-8" We have two sets of preemption points where we evaluate preempt_count to decide if scheduling is safe: - preempt_enable() - irqentry_exit_cond_resched() Architectures with untested/incomplete preempt_count support define ARCH_NO_PREEMPT. Now, if an architecture did want to support preemption, ensuring that preemption at irqentry_exit_cond_resched() is safe is difficult -- preemption can happen at any arbitrary location where preempt_count evaluates to zero. The preempt_enable() case -- whether executed in common code or in architecture specific code mostly requires verification of local context and can be done piecewise. So, decompose ARCH_NO_PREEMPT into ARCH_NO_PREEMPT_IRQ and ARCH_NO_PREEMPT_TOGGLE, with the first stating that the architecture code has possibly incomplete preempt_count accounting and thus preempting in irqentry_exit_cond_resched() is unsafe, and the second stating that the preempt_count accounting is incorrect so preempting anywhere is unsafe. ARCH_NO_PREEMPT now only depends on the ARCH_NO_PREEMPT_TOGGLE. Additionally, only invoke irqentry_exit_cond_resched() if ARCH_NO_PREEMPT_IRQ=3Dn. Cc: Thomas Gleixner Cc: Peter Zijlstra Cc: Andy Lutomirski Cc: Andrew Morton Cc: Arnd Bergmann Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Brian Cain Cc: Geert Uytterhoeven Cc: Richard Weinberger Cc: Anton Ivanov Cc: Johannes Berg Signed-off-by: Ankur Arora --- arch/Kconfig | 7 +++++++ kernel/entry/common.c | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/arch/Kconfig b/arch/Kconfig index 30f7930275d8..dc09306aeca0 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -1295,8 +1295,15 @@ config COMPAT_32BIT_TIME This is relevant on all 32-bit architectures, and 64-bit architectures as part of compat syscall handling. =20 +config ARCH_NO_PREEMPT_IRQ + bool + +config ARCH_NO_PREEMPT_TOGGLE + bool + config ARCH_NO_PREEMPT bool + default y if ARCH_NO_PREEMPT_TOGGLE =20 config ARCH_SUPPORTS_RT bool diff --git a/kernel/entry/common.c b/kernel/entry/common.c index c684385921de..b18175961374 100644 --- a/kernel/entry/common.c +++ b/kernel/entry/common.c @@ -359,7 +359,8 @@ noinstr void irqentry_exit(struct pt_regs *regs, irqent= ry_state_t state) } =20 instrumentation_begin(); - if (IS_ENABLED(CONFIG_PREEMPTION)) + if (IS_ENABLED(CONFIG_PREEMPTION) && + !IS_ENABLED(CONFIG_ARCH_NO_PREEMPT_IRQ)) irqentry_exit_cond_resched(); =20 /* Covers both tracing and lockdep */ --=20 2.31.1 From nobody Sun Feb 8 09:27:25 2026 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (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 27B261E534 for ; Tue, 28 May 2024 00:37:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856678; cv=fail; b=Lx7mJqyhEJo4ZX+wa7SodJaqclA3uPqkYPl9YUhmO2vJERS40vW6aYU+euRmEO91BG4oO1eYGNxQUUcDmbB7pjP23W+ICis/vmFAiGaqQggbIR2wo7x1xv/eZSOm4roZf9XEpdNa60ADbHSyGXt4q7Q38rNm9ZfgE2bsqAcXj4Y= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716856678; c=relaxed/simple; bh=+A8dsZ8/YL1u7HSGOOSfeX1jpJCgiU8gb29iSFQsjvQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=tJAuAGECHd0wrGjqrSE5lbU84T7VYXTdeT+3iiuen+9HVDbuL5WYs/bdicg4U6dON3YrE3k8zr/aqqFI8x4tX+q23LQUdetcu8lUnts4imI1tQxodykRu4UMjaI0/zQflZQLF5ajfKpc50ygvNdEJPEt+SN/4KFpYtPm6odggoY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44RMdRVb011554; Tue, 28 May 2024 00:37:11 GMT DKIM-Signature: =?UTF-8?Q?v=3D1;_a=3Drsa-sha256;_c=3Drelaxed/relaxed;_d=3Doracle.com;_h?= =?UTF-8?Q?=3Dcc:content-transfer-encoding:content-type:date:from:in-reply?= =?UTF-8?Q?-to:message-id:mime-version:references:subject:to;_s=3Dcorp-202?= =?UTF-8?Q?3-11-20;_bh=3DJqL0WZc5cs7URpKDSChaxrXh6Z0whnjCbNwbt1TPFbI=3D;_b?= =?UTF-8?Q?=3DdiErdKHM2xcIwWg3oUfbmzcglMhvYd7TU6v70QDvMXvi6IkakAHPca9Zh1WR?= =?UTF-8?Q?jyJXJkoy_Rr1XuHE90HaCA1kGEUgRGGFFKtvMNC/A8RLGY4wmwwrmnaZeKDDJGm?= =?UTF-8?Q?uCeMAqrk1Bcmar_LrqXhC5SWFmefi9lOnLSs1A9R3FPqDGGmkG3hdwPUOSXI6aH?= =?UTF-8?Q?pwLYVPI47XZlnIh2WK91_cZYvb+UFAY7T2zQYmcOfXTmLI+lxKytAq6PZB+mP6E?= =?UTF-8?Q?mof/Sf8gGO6p4pYBrPznuozDKs_nfowwNGwVyTSIjEnfQVKcN98InIJmKePVxot?= =?UTF-8?Q?F2421aLAcKEVWCxxPVYHjCPfn9RUOogt_1w=3D=3D_?= Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3yb8p7k5ub-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:11 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 44RNUSE3037587; Tue, 28 May 2024 00:37:10 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3yc5057yky-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 May 2024 00:37:10 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n1ipE1swX1E/MxwmugqmeDpI5Ra2pGjYlYodh3tWCVc4At4lQhLMQWy6VyeeEfE6ud5UTUDfi+G5FA+Cgtz38f1+vipPWCM/MssD9rkQIz2CV1ycVj6IPOB8xtk/HiWpiXnY8nf0azLnV64i6t+hc6myRPARxfzcYJO9zK6z7md4RYYhlogom1PQLjgbUUpzAADIzWnJ773qRlBuPqa3N3a9d+QVSZg6GJnQiIXTLCmrrnYLh74YlWNBailERkk0AvyN8igq+urx9nGdJliIv+Jk4WB8PjibIHeImV6GwHEe7OXnuUMFa0l0ysjENV4oLjM03i0YMuvxAAMWwbb65g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JqL0WZc5cs7URpKDSChaxrXh6Z0whnjCbNwbt1TPFbI=; b=IcDwta1/hSgFDRIVJ2ON0N5g5qJd4Q9SOhBXu4btomWk/ViJU5b7z6U1k1YqDf02JBuDzuks7S2BhfCWIZWgrekH95lpr38Zx5AacLJE3Gc4naDRoP048dy08h/ub12G4qDuj/GquAPdgikqRpbP04dWyUDl2Q81NnKAn/NLHmt07ZJHGNJWCSqv2UGL8FNXUOnR/7jcdfUTwemgGjVInZ92ABSGYW44sksihye8LTwDNbiY8KzOCWtV2uA5vDGyPv7iJMf4dVAcggQjl3LE/Qb0o6A0f+1mjux4J8jO/5AYSLmat5oIaHcHb/qG7ndQsCzoKd46dzTfxCFiVP4MGw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JqL0WZc5cs7URpKDSChaxrXh6Z0whnjCbNwbt1TPFbI=; b=FWAnTHodPpHmTaJjfFry6V2QP/Pvy6QGkKCYPFIjNo72cZVTZX4a2skCeL/e6Yen8+dcWD7EKXm0WlaJzJSzyNFx9/twOf8ABGVdGHHpIgjVcTar+i4CG6s7oLm64knolDvkuuweKnw6OC9RAPaTZZvgWdLNl6472Z5AdYCWD/g= Received: from CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) by BN0PR10MB5077.namprd10.prod.outlook.com (2603:10b6:408:12e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Tue, 28 May 2024 00:37:08 +0000 Received: from CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e]) by CO6PR10MB5409.namprd10.prod.outlook.com ([fe80::25a9:32c2:a7b0:de9e%4]) with mapi id 15.20.7611.030; Tue, 28 May 2024 00:37:08 +0000 From: Ankur Arora To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, peterz@infradead.org, torvalds@linux-foundation.org, paulmck@kernel.org, rostedt@goodmis.org, mark.rutland@arm.com, juri.lelli@redhat.com, joel@joelfernandes.org, raghavendra.kt@amd.com, sshegde@linux.ibm.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, Ankur Arora , Richard Henderson , Ivan Kokshaysky , Matt Turner , Brian Cain , Geert Uytterhoeven , Richard Weinberger , Anton Ivanov , Johannes Berg Subject: [PATCH v2 35/35] arch: decompose ARCH_NO_PREEMPT Date: Mon, 27 May 2024 17:35:21 -0700 Message-Id: <20240528003521.979836-36-ankur.a.arora@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240528003521.979836-1-ankur.a.arora@oracle.com> References: <20240528003521.979836-1-ankur.a.arora@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MW4PR04CA0289.namprd04.prod.outlook.com (2603:10b6:303:89::24) To CO6PR10MB5409.namprd10.prod.outlook.com (2603:10b6:5:357::14) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR10MB5409:EE_|BN0PR10MB5077:EE_ X-MS-Office365-Filtering-Correlation-Id: c8435718-8ace-4fb4-3196-08dc7eae4e33 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|366007|1800799015|376005|7416005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?WJoAwurexoH/kRTruqBPw/y8ydzlkcIpX3n/4SMCOy5mGvgPA6ezKyCp+UgI?= =?us-ascii?Q?YBnqar6ffxtIOicv9y+PCqtQybsdDjxpDf5D/u+EXYMh8Q5+JQ0Twt7ffAKr?= =?us-ascii?Q?VNIgMR/NA8EJr0wynPtJgA0IskGTsaPYtrTbhu+Bueh7rGeXKJNA+UGk5KpS?= =?us-ascii?Q?+3vByYZalRVn8GfjDswXenyJablM9gM9/Fry4evMdRSLvqELl1Dkp9TpzYWH?= =?us-ascii?Q?pVWfExtD3W62EdCIEJUR3KwQ39S/mgSHPhFUTcTcBrr1G7f9O3al6/mLZ1Li?= =?us-ascii?Q?LZgLJQH/skGLipTctczQ2ygm3w6pcGXs+9qMriQxc0RdwH6tigqGyQE2ZK9D?= =?us-ascii?Q?9kbLYGNYFc2i3q8/8HLDIfUUllT+kNDwhcQc5zrH6b+Lmq8g0ETQj51HxaS/?= =?us-ascii?Q?XukDHkSkSnClD6234cJVTGujlMY50bzcauyp7wsHGI3etBv0yGdkQlDqPbpJ?= =?us-ascii?Q?r1BLFV9u7WUbVHpy2AODk5XBB8I7YHOgBTRmq2+mkpu+UfxoI2j4T7eWHbvE?= =?us-ascii?Q?a+tn70O8wfuICQ79p8XhCi9v8X8+6eFaJ2sOmouRtP1FErnDsSmDmm1XO8Bz?= =?us-ascii?Q?AWuFnSgGdIHLWfvzsJrKMFB7agDivRzs4T1XBnyTRWxDIg9Qu5a69yyzH5ao?= =?us-ascii?Q?yo3mQQlXewmlvkI5+q+JR+O5MsBut+IS4rFu55ZU8tai+0advodslOMR4iQQ?= =?us-ascii?Q?T6X+uCfm/YueSk/XS/UmfaokKY5I7y259eU9Cmi1ENExupeqA+W1bsz485OY?= =?us-ascii?Q?nCz9pCcZBcdpYJwD8DqsLIpH59AY2x6jTXrT3g6Eq4yTVGDYdoQa3bTMlLBm?= =?us-ascii?Q?BF/PKBcMlwRlOV2kNV8F9JUxW6Je+DRxpauQyKtLo1DNA4Kv7mkiNkEVq/pK?= =?us-ascii?Q?rcPmIuNvlqKx3dgEvfZwr6wuSTeLn1p89vJP8r1FuM3oSwFPiinHzYZaqzQ2?= =?us-ascii?Q?76A/q3TH1YT0hL7rXsxK30BqJoR+PMm+dyMnnbKgelKE46pZ4SoV2s7AFb9N?= =?us-ascii?Q?wltmlDauXDQn0U9AB3JUlqzyA/mk7CJD3vLkXQ00NrSIRAAjABlnFjzkx0jt?= =?us-ascii?Q?heOMkSZHaHWxFpELrHF4NBsRVDDmPepi5xwq8vLNoxP4edc375SpM4Yam5fy?= =?us-ascii?Q?u3pErlgdu5rau10Pt15x9IbcXuvrgJxViDxfqoiQ1FxsFACzk/eOISDklHJJ?= =?us-ascii?Q?gY7Jb/mcHjbMFh88E95XzJjjomukCHPV+S6RIa8gH4uAeAdabRL0a+C2O5iK?= =?us-ascii?Q?TqmRnbEmn439QMbPM65544d+8d141i8M2IQxDJMPFQ=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR10MB5409.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005)(7416005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?FVfjIYZkhSvdVCQ6xoRpAnNIQVxHaEUW+cWWUDAKJQg09QvN1aZ3WX4uxCDk?= =?us-ascii?Q?94vX2EiyGLifeDxF/o/90Pl9tNZPt2YH5GZ07KvOAQoQumo9+tn/zhTgq57m?= =?us-ascii?Q?TReYKokHYuzzbTLLtvn0bEfHGbWuOxtOY5Pw5Hn6xTWnEUwkjrSqUANtMpph?= =?us-ascii?Q?TEDaCuliJ1zKuyikky9YWSiYaBt2jYvVjNeMBvY3MPFa/eDBL+VWz5YX1p+W?= =?us-ascii?Q?HRYl+ydo/uOfFL33XvKXmqmR0ZktRkLoOtJoUYcvkak3LEBv72yGGCJZJcdS?= =?us-ascii?Q?Yo0vg2i411HfigtcasxSWkf8hlFCCnn2vaYU3sP4xR4r+/wQdzWsPGhj3la/?= =?us-ascii?Q?dHvjxIapSwZjmWI6IcEWg34QLPtNsJVtMWurJZKjPwY1S5pTvajGQB3ZFrxe?= =?us-ascii?Q?EaPq08COCIluFpgwF0DOnCHxk1k3LethY/IdVOsmmrFyCC0ThbICmRI327AU?= =?us-ascii?Q?2eFMR3ZRsk5ZSoOA19ujAs6HhlTtFBc3tpsoiqTKVkAmcIg92U3SewLFpUXm?= =?us-ascii?Q?b7UUOc9trZTwXXxz/hutOeFh7erDbiinyFgcljDeoP6oAQe25DJ4fdZyiu04?= =?us-ascii?Q?cBHso2md87SiDn9937jZMndhnOWMzDyhxTldqpe49BmxLnz89wyS07Rgp8oD?= =?us-ascii?Q?Hk6MwVVVSuBdhCarOnoRu59BlbxqilRaKM6pTtDAhlpVii83TqfZBKxVvwUk?= =?us-ascii?Q?sNxYT2V9yMp7Bu3zqvNhe3ZGBMLa+93/JgtSqd1WNYNvhtf50pL/aYFdiNkw?= =?us-ascii?Q?zzRiZmsDE2498qPzWovQH+cgZ9rh/CHA6MXmYcbtR40+VNl4uRLVTjDjYrp7?= =?us-ascii?Q?5iYgpcPindz5PRBNLuHDlsnBpq/U4mi2+LMxSVQgx0akKHfaq6IVXdY/kP3c?= =?us-ascii?Q?K6E5fcKvhRgVwJknCIpqiNDmXEJebX4Mmn/snmJ3hXHqD11v0wsvrntPM4CH?= =?us-ascii?Q?SXNuyjwZqEA1Xs2XS31K7t6K6SHHI1Vm9voZCRfnjszjJiC4RY3yXJFuBOPr?= =?us-ascii?Q?3kT2iHBgNXryz52ktWK4f3OC7+pClT5Dw4UrjBA7hzOOnk8HPXv1YEHZoXkq?= =?us-ascii?Q?maGYu7CFWXlXC61HIWFTYI6xVjcDGwB2USfuhXyGnIIlVperp5qjeJyJFeGq?= =?us-ascii?Q?K2MFI7lkP+8NB9OUdQsCi1xdBxd1vnjBJa3DVkiMhKlyPlFjl65nbnJbJRfn?= =?us-ascii?Q?grkFhyEVL9sHtK/O69fDA0EtB+leXP+WGAVNsUUgPH8EBdWsL8XImgh9y2sN?= =?us-ascii?Q?ntFjFiJdR8JWSwlnvMc9Siq5NdVFgL3rzzF8b1JqkhTVStodYGfNaRzMTelr?= =?us-ascii?Q?zN/S+8xeIKWqYgl7srD1h+0FBbGd5DqEGoaJYbTeOW4VgRCSo+QpBp8kZ/Xr?= =?us-ascii?Q?OSx/3s1CnyeKYvu0QnSkMQnkk6hH/umUpbFtaLVsLVIjocPXcIGXG9jc+MZI?= =?us-ascii?Q?yQLv18lO341Tgw7wE+T1wG3cHjKhbWVX0WahjFMQO0NkYOdW168qggFazvPQ?= =?us-ascii?Q?+DsMrc2iXoVz10yS9ILRjHYa/7/hvGDb7lMqrC1pzqnH5fmbQNR5gQ+40UGc?= =?us-ascii?Q?Zphmg06kkrlG5ttv7kDlZRLmvo1tfb2V6i7xqvQ3JXKkYMMw3Xs1q8NTQCZ1?= =?us-ascii?Q?cw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: cG+l7fLYSkCwdzCMEjuDm0a8GC0XB2ZRDGRDvLsJNxlEVxMW52Dpi/n/N4CsCSESmrtcWSqn79ybSLhuqfDJFkfjQxmmhBcycuEIYDW9ImhQAurQcsmjeeT1sau+ADT+hsbs0y1ATNCPP70hV+Du4wyR+1z2dwza8fJf4fvmMrS5LMs2IogPaL+nwL+3QrgrbMdWRZxgsa+7VSHsK2OYPz2VIv/AFJ27ByVJ/8euxrVh4aje5NuJNRAvq3Vy7iaQ89Vtzbh3XmlVLh8nMCEQEJwO1msJWjTKpf03iGuJDUvxKTyj32kJ1hQvRn/855e93RqLhmDimJX2tan+MaLJDl0rMHzS+aj3IAdCIg21RKg61PKU3l6txqXqP74uvD6/szO+xZyWOkYZIdmsAcEy+/wIs92iqqZzxgAnsASBTHayF7vbyeZLvQ76cfMelFaN1gbCT31/L1zLqJHc5J4k98rHaEQsUCjUOwJa3OrCvOrwbLMzRy8UNRy9GJspWQHovXPhwfco80cCB5kMJXnrur+OEj3v20jKyBUJyWrzqDMUlJbC3bfHp6WcWv1DlQQDy7lB3nFY75xE1VPzH2iMtYaGui/37PpYK3iwzXT56wE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c8435718-8ace-4fb4-3196-08dc7eae4e33 X-MS-Exchange-CrossTenant-AuthSource: CO6PR10MB5409.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2024 00:37:08.2264 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8+2ntiXKDSRgAdCSwKVNGVY+JQwOtW9J+PXkLQGIe9EFzYxAX3rlNeSuPeZOGiu9G9XzaYb2pgEhO5AB2ozA2ppEFLkDzduMv2p9/NDc4Yo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5077 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.12.28.16 definitions=2024-05-27_06,2024-05-27_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2405010000 definitions=main-2405280003 X-Proofpoint-ORIG-GUID: A9b0kBmM5VZ5LIWngHKIubAQqWVN1DZT X-Proofpoint-GUID: A9b0kBmM5VZ5LIWngHKIubAQqWVN1DZT Content-Type: text/plain; charset="utf-8" Now that ARCH_NO_PREEMPT is conditioned only on ARCH_NO_PREEMPT_TOGGLE, decompose ARCH_NO_PREEMPT into ARCH_NO_PREEMPT_IRQ and ARCH_NO_PREEMPT_TOGGLE. This allows architecture code to selectively enable one or the other. Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Brian Cain Cc: Geert Uytterhoeven Cc: Richard Weinberger Cc: Anton Ivanov Cc: Johannes Berg Signed-off-by: Ankur Arora --- arch/alpha/Kconfig | 3 ++- arch/hexagon/Kconfig | 3 ++- arch/m68k/Kconfig | 3 ++- arch/um/Kconfig | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig index 3afd042150f8..7fd1d9dcad8d 100644 --- a/arch/alpha/Kconfig +++ b/arch/alpha/Kconfig @@ -6,7 +6,8 @@ config ALPHA select ARCH_HAS_CURRENT_STACK_POINTER select ARCH_MIGHT_HAVE_PC_PARPORT select ARCH_MIGHT_HAVE_PC_SERIO - select ARCH_NO_PREEMPT + select ARCH_NO_PREEMPT_TOGGLE + select ARCH_NO_PREEMPT_IRQ select ARCH_NO_SG_CHAIN select ARCH_USE_CMPXCHG_LOCKREF select DMA_OPS if PCI diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig index e233b5efa276..3a33a26e1b81 100644 --- a/arch/hexagon/Kconfig +++ b/arch/hexagon/Kconfig @@ -6,7 +6,8 @@ config HEXAGON def_bool y select ARCH_32BIT_OFF_T select ARCH_HAS_SYNC_DMA_FOR_DEVICE - select ARCH_NO_PREEMPT + select ARCH_NO_PREEMPT_TOGGLE + select ARCH_NO_PREEMPT_IRQ select ARCH_WANT_FRAME_POINTERS select DMA_GLOBAL_POOL select HAVE_PAGE_SIZE_4KB diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig index 6ffa29585194..3f7d675849ed 100644 --- a/arch/m68k/Kconfig +++ b/arch/m68k/Kconfig @@ -11,7 +11,8 @@ config M68K select ARCH_HAS_SYNC_DMA_FOR_DEVICE if M68K_NONCOHERENT_DMA select ARCH_HAVE_NMI_SAFE_CMPXCHG if RMW_INSNS select ARCH_MIGHT_HAVE_PC_PARPORT if ISA - select ARCH_NO_PREEMPT if !COLDFIRE + select ARCH_NO_PREEMPT_TOGGLE if !COLDFIRE + select ARCH_NO_PREEMPT_IRQ if !COLDFIRE select ARCH_USE_MEMTEST if MMU_MOTOROLA select ARCH_WANT_IPC_PARSE_VERSION select BINFMT_FLAT_ARGVP_ENVP_ON_STACK diff --git a/arch/um/Kconfig b/arch/um/Kconfig index 93a5a8999b07..390328e97261 100644 --- a/arch/um/Kconfig +++ b/arch/um/Kconfig @@ -11,7 +11,8 @@ config UML select ARCH_HAS_KCOV select ARCH_HAS_STRNCPY_FROM_USER select ARCH_HAS_STRNLEN_USER - select ARCH_NO_PREEMPT + select ARCH_NO_PREEMPT_TOGGLE + select ARCH_NO_PREEMPT_IRQ select HAVE_ARCH_AUDITSYSCALL select HAVE_ARCH_KASAN if X86_64 select HAVE_ARCH_KASAN_VMALLOC if HAVE_ARCH_KASAN --=20 2.31.1