Re: sched: horrible way to detect whether a task has been preempted

From: Jiri Kosina
Date: Fri Apr 08 2016 - 03:05:34 EST


On Thu, 7 Apr 2016, Jessica Yu wrote:

> > Alternatively, without eating up a TIF_ space, it'd be possible to push a
> > magic contents on top of the stack in preempt_schedule_irq() (and pop it
> > once we are returning from there), and if such magic value is detected, we
> > just don't bother and claim unreliability.
>
> Ah, but wouldn't we still have to walk through the frames (i.e. enter
> the loop in patch 7/14) to look for the magic value in this approach?

The idea was that it'd be located at a place to which saved stack pointer
of the sleeping task is pointing to (or at a fixed offset from it).

--
Jiri Kosina
SUSE Labs