Messages in this thread | | | Date | Thu, 12 Sep 2013 15:33:48 +0200 (CEST) | From | Thomas Gleixner <> | Subject | Re: [PATCH 05/14] hrtimer: Fix invalid wakeup in do_nanosleep |
| |
On Thu, 29 Aug 2013, Libin wrote:
> If thread is preempted before calling set_current_state(TASK_INTERRUPTIBLE), > and the other thread set the condition followed with wake_up_process. After > that when this thread is re-scheduled, calling set_current_state to set itself > as state TASK_INTERRUPTIBLE, if it is preempted again after that and before > __set_current_state(TASK_RUNNING), it triggers the invalid wakeup problem.
do_nanosleep() is only called from sys_nanosleep() and sys_clock_nanosleep() user space interfaces.
So the task is not going to be woken up by some magic other thread except by a signal. The latter is handled by the scheduler which will return with state running. So what kind of problem are you trying to solve?
Thanks,
tglx
| |