Re: [RFC PATCH v2 00/17] Core scheduling v2

From: Vineeth Remanan Pillai
Date: Tue Apr 23 2019 - 14:45:45 EST


>> - Processes with different tags can still share the core

> I may have missed something... Could you explain this statement?

> This, to me, is the whole point of the patch series. If it's not
> doing this then ... what?

What I meant was, the patch needs some more work to be accurate.
There are some race conditions where the core violation can still
happen. In our testing, we saw around 1 to 5% of the time being
shared with incompatible processes. One example of this happening
is as follows(let cpu 0 and 1 be siblings):
- cpu 0 selects a process with a cookie
- cpu 1 selects a higher priority process without cookie
- Selection process restarts for cpu 0 and it might select a
process with cookie but with lesser priority.
- Since it is lesser priority, the logic in pick_next_task
doesn't compare again for the cookie(trusts pick_task) and
proceeds.

This is one of the scenarios that we saw from traces, but there
might be other race conditions as well. Fix seems a little
involved and We are working on that.

Thanks