Re: [RFC PATCH 07/11] sched: Add proxy execution

From: Joel Fernandes
Date: Mon Oct 17 2022 - 00:03:20 EST




> On Oct 16, 2022, at 4:48 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> On Sat, 15 Oct 2022 15:53:19 +0200
> Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
>>> From this it is easy to see that the critical secion executes with the
>> direct sum of the blockchain as a whole (all of them will have donated
>> their relative time to make the owner elegible again) -- provided the
>> critical section is of course long enough for this to matter (or it's
>> owner's weight small enough etc..).
>
> Does this mean that a lower priority task could do a sort of DOS attack
> on a high priority task, if it creates a bunch of threads that
> constantly grabs a shared lock from the higher priority task? That is,
> the higher priority task could possibly lose a lot of its quota due to
> other tasks running on its behalf in the critical section?

Just my opinion: I can see that as a problem, but on the other hand, if a bunch of threads are acquiring a shared lock to block a high priority task, then they are probably causing a DOS-type of issue anyway whether PE is enabled or not. Even if a prio inheritance mechanism boosts them, they’re still making the progress of the blocking high priority tasks slower. Or, did I miss something in this use case?

Thanks.