[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <E5C37D1C-F220-454B-B152-4E30C2D7827C@oracle.com>
Date: Thu, 3 Jul 2025 05:38:47 +0000
From: Prakash Sangappa <prakash.sangappa@...cle.com>
To: Thomas Gleixner <tglx@...utronix.de>
CC: Peter Zijlstra <peterz@...radead.org>,
"linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>,
"rostedt@...dmis.org" <rostedt@...dmis.org>,
"mathieu.desnoyers@...icios.com" <mathieu.desnoyers@...icios.com>,
"bigeasy@...utronix.de" <bigeasy@...utronix.de>,
"kprateek.nayak@....com"
<kprateek.nayak@....com>,
"vineethr@...ux.ibm.com" <vineethr@...ux.ibm.com>
Subject: Re: [PATCH V6 1/7] Sched: Scheduler time slice extension
> On Jul 1, 2025, at 5:36 AM, Thomas Gleixner <tglx@...utronix.de> wrote:
>
> On Tue, Jul 01 2025 at 12:56, Peter Zijlstra wrote:
>> On Tue, Jul 01, 2025 at 10:42:36AM +0200, Thomas Gleixner wrote:
>>
>>> What's worse is that it breaks the LAZY semantics. I explained this to
>>> you before and this thing needs to be tied on the LAZY bit otherwise a
>>> SCHED_OTHER task can prevent a real-time task from running, which is
>>> fundamentally wrong.
>>
>> So here we disagree, I don't want this tied to LAZY.
>>
>> SCHED_OTHER can already inhibit a RT task from getting ran by doing a
>> syscall, this syscall will have non-preemptible sections and the RT task
>> will get delayed.
>>
>> I very much want this thing to be limited to a time frame where a
>> userspace critical section (this thing) is smaller than such a kernel
>> critical section.
>>
>> That is, there should be no observable difference between the effects of
>> this new thing and a syscall doing preempt_disable().
>>
>> That said; the reason I don't want this tied to LAZY is that RT itself
>> is not subject to LAZY and this then means that RT threads cannot make
>> use of this new facility, whereas I think it makes perfect sense for
>> them to use this.
>
> Fair enough, but can we pretty please have this explained and documented
> and not just burried in some gory implementation details, which nobody
> will understand in 3 months down the road.
>
> Also if we go there and allow non-RT tasks to delay scheduling, then we
> need a control mechanism to enable/disable this mechanism on a per task
> or process basis. That way a RT system designer can prevent random
> user space tasks, which think they are the most important piece, from
> interfering with truly relevant RT tasks w/o going to chase down source
> code and hack it into submission.
Could the per task control mechanism be thru /proc?
Wonder how easy it will be to administer such control.
Alternatively, can we have a config option to apply to LAZY only?
This will not provide the finer control as you suggested.
Thanks,
-Prakash.
>
> Thanks,
>
> tglx
Powered by blists - more mailing lists