From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id ACA41C0218F for ; Tue, 4 Feb 2025 03:56:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DFB3C6B007B; Mon, 3 Feb 2025 22:56:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DAB016B0083; Mon, 3 Feb 2025 22:56:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C72176B0085; Mon, 3 Feb 2025 22:56:51 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id A9A376B007B for ; Mon, 3 Feb 2025 22:56:51 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 4A316C0630 for ; Tue, 4 Feb 2025 03:56:51 +0000 (UTC) X-FDA: 83080901022.29.C41C6DF Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf30.hostedemail.com (Postfix) with ESMTP id 8F22080002 for ; Tue, 4 Feb 2025 03:56:49 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=none; spf=pass (imf30.hostedemail.com: domain of "SRS0=0UFz=U3=goodmis.org=rostedt@kernel.org" designates 139.178.84.217 as permitted sender) smtp.mailfrom="SRS0=0UFz=U3=goodmis.org=rostedt@kernel.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738641409; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=RbAR34BNeC3ePb3A0oeJ51wwm/czUiuvdxoOV9lvVr8=; b=dRedN5Fl/17zLsbIJValB5vhBjoHUtNZnbeDWDfteqgsFP4vo2YT1tv53mFayd8a45NbMN sGtB2EoIsO6H/DaDYMp/5bjQaoOHZpAU35Z4bOGHQCmAOH2WOMVfT1hFrEq94P0mT4Ul/c z0A7aFYjOLB6pd9AILqGwO/asYsrDww= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738641409; a=rsa-sha256; cv=none; b=5xwnuCe2qwBEA88QQ9wgImh52WuzLK7C2tltfq6wIPa4qbEVPEYUrgf9G7fcEzyG491r0T a54HlX8eFfF7I4KSyeLeTTVfCKCWoP+dwVFtqYMSpGnwO3YRdUs4E/XeE3ykCqGdN7osDW XowG6xTbxbe5INtbuxvHULafxySHKJo= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=none; spf=pass (imf30.hostedemail.com: domain of "SRS0=0UFz=U3=goodmis.org=rostedt@kernel.org" designates 139.178.84.217 as permitted sender) smtp.mailfrom="SRS0=0UFz=U3=goodmis.org=rostedt@kernel.org"; dmarc=none Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 45F675C6B3A; Tue, 4 Feb 2025 03:56:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 511F2C4CEDF; Tue, 4 Feb 2025 03:56:44 +0000 (UTC) Date: Mon, 3 Feb 2025 22:57:19 -0500 From: Steven Rostedt To: Suleiman Souhlal Cc: Peter Zijlstra , linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Thomas Gleixner , Ankur Arora , Linus Torvalds , linux-mm@kvack.org, x86@kernel.org, akpm@linux-foundation.org, luto@kernel.org, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, juri.lelli@redhat.com, vincent.guittot@linaro.org, willy@infradead.org, mgorman@suse.de, jon.grimm@amd.com, bharata@amd.com, raghavendra.kt@amd.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com, jgross@suse.com, andrew.cooper3@citrix.com, Joel Fernandes , Vineeth Pillai , Ingo Molnar , Mathieu Desnoyers , Clark Williams , bigeasy@linutronix.de, daniel.wagner@suse.com, joseph.salisbury@oracle.com, broonie@gmail.com Subject: Re: [RFC][PATCH 1/2] sched: Extended scheduler time slice Message-ID: <20250203225719.3152a78f@gandalf.local.home> In-Reply-To: References: <20250131225837.972218232@goodmis.org> <20250131225942.365475324@goodmis.org> <20250201115906.GB8256@noisy.programming.kicks-ass.net> <20250201181129.GA34937@noisy.programming.kicks-ass.net> <20250201180617.491ce087@batman.local.home> <20250203084306.GC505@noisy.programming.kicks-ass.net> <20250203114537.6a30c7c0@gandalf.local.home> X-Mailer: Claws Mail 3.20.0git84 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Stat-Signature: 9pthypdag3f35my8mdx3bdg51pt7jinj X-Rspamd-Queue-Id: 8F22080002 X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1738641409-891164 X-HE-Meta: U2FsdGVkX1+biUzFaauRQ0xfqIJAaLfQkgx05sjBtgRYRydNsPWJrPp4Pv/xdWuR8RW1tPLcBCo7bH5D409Cirp1k4HPYeS0e9Su5EUStUQaVACdtXK1dMzL+R36quLB7PnqQsjXot1gpQL8s8cDoTlEO0GyMNSUW7Douzu/92ymF+wNO3rPCK6DZEmKmrQ7ijL1t02KX9ve/iFPa9HWAD067jekGZRRNufHE0ruXaISajjahLhpQn9h7maQTx6C9hroCT6TNTwl3cPyf4FLLB8r97nv/kQEEo6MjuKZwD9qW32CXu2Md9axYLUaSKst5e5UjG+q9XPpbO1hnxreJ6AfmhgKfF3kIKFcfvLRrqeko6YoOUS8g7hj0NnTmItyHWvz364UjZIAlvk8yW9MLOYfZSIZPAbuxqCbdULaT+k19MB0hMmIBEuH5t6lZHqqXvHNO3WTgCslpdhS1JWCc2W08vZsquWCzGfMPJ/ghmXBeD+B5Y9KVUgsPjlvWQo7dS7TjkYosCLbXLcoWaXNE3p/vkxicMZNbPApqa1M4TTuVHt6P8apyCXR91kDKqgshGkzTT/3KEgNe7ofoeItzreZhGMpZ6OEvsos7fUnP8kZs24KPigSEqQ5uGQCU3RNOIhxi5ylWDEUNBHumAGy36FxWxPAZWWU5oatZsEXwesdSmxVJ5xMvZFwXobtQkV/Xmyg4aef1yxaZcdxg9lVfGske+SMfDQx7gToogMT6s2yndxtqPmfTsjbRyhRKoXkY80OYRI0cXhZDys9kP2vLydy8+j6qnpesD/vQs/ASZi8jzXdKSIvOigbhDWgzvZSzn0bifu42LE0kssolJsMITeYZweh5qDVs2DC2+x7aJatsanWR3bS04/3eqPOEz+dyrDogGnE82T11/as/pUMjeihbiU6vLKqozintWGxSFcyJOh10yHYEkkp8wutArNNVMzpAoKwWI+TaBD92fa hCu6irxJ npFj0lKF9uzCSsr31nPzHi/Hr4dGiVjTjYvc554uq8TrSE83G8jwhSspvvb23b82/elLEjnYVcllQu5qA1/jxJOBJVqAT1QyqwnBgdWen/Wf8NW4/7Jl1sRs2Z6XleZZeuMGEOCBydpN2Af6mRsAfCdttkYsfoNfUAUTVm1PLmUNCcoYKzuCtTuz0Te8Vr9nQZjh/BKOzk64qHIOGy3P/oZcbHkc/o+YnKCbM5keKADJ7QusRrc/Ob8dJ+zMT3AzAKMg9kD7dkCMXGQU4h78n63n7kdR9/E4MtZI92c+9SqhQi5mfDGvcZYrcy/mMJbjCferpdPLZoC2ffSbVt+keNHzZeRP/NRBSuJp0M7owPpyYMF1kG8ne810aF7tK/ygSt58FUEgGO4kMOyFk5YCoJ89PiuPUf7449y40IbChL7qd1aFSdnL4W8OJAKvSHbntH/Y9Hy0MQl5KSw8= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, 4 Feb 2025 12:28:41 +0900 Suleiman Souhlal wrote: > Can you explain why this approach requires PREEMPT_LAZY? > > Could exit_to_user_mode_loop() be changed to something like the > following (with maybe some provision to only do it once)? > > if ((ti_work & _TIF_NEED_RESCHED) && !rseq_delay_resched()) > schedule(); The main reason is that we need to differentiate a preemption based on a SCHED_OTHER scheduling tick, and an RT task waking up. We should not delay any RT tasks ever. If PREEMPT_LAZY becomes default, IIUC then even the old "server" version will have RT tasks preempt tasks within the kernel without waiting for another tick. Currently, the only way to differentiate between a SCHED_OTHER scheduler tick preemption and an RT task waking up is with the NEED_RESCHED_LAZY vs NEED_RESCHED. Now, if we wanted to (and I'm not sure we do), we could add another way to differentiate the two and still allow this to work. > > I suppose there would also need to be some additional changes to make > sure full preemption also doesn't preempt, maybe in > preempt_schedule*(). Which may be quite difficult as the cr_counter is in user space and can only be read from a user space faultable context. -- Steve