Hi All,
I have a kernel thread THREAD_A and it waits for an event by calling wait_event() API. Other thread THREAD_B wakes up the THREAD_A by calling wake_up() API. In a concurrent execution, what if the wake_up() is called before THREAD_A entering into TASK_UNINTERRUPTIBLE sleep? I have noticed in running long soak test, THREAD_A enters into TASK_UNINTERRUPTIBLE sleep and THREAD_B’s wake_up() not able to wake the THREAD_A, what might be the reason for this? I would like to know in which scenario wake_up() fails to wake the sleeping thread? -- Thanks, Sekhar