Hi All,<br><br>How kernel scheduler treats task's TASK_UNINTERRUPTIBLE & TASK_INTERREPTIBLE states ? <br><br>Actually in my case i have created a kernel thread and it is waiting on an event as per below :- <br><br>
wait_event(queue, flag);<br><br>in the above condition it gives me hung task timeout dump as it puts the task in TASK_UNINTERRUPTIBLE state<br>whereas if i change the function call to <br><br>wait_event_interruptible(queue, flag);<br>
It works fine as the task is in TASK_INTERREPTIBLE state <br><br>I have checked in the kernel [kernel/hung_task.c ] check_hung_task() <br>It says that <br><br> /*<br> * Ok, the task did not get scheduled for more than 2 minutes,<br>
* complain:<br> */<br>So is that means that TASK_UNINTERRUPTIBLE will not get schedule by the scheduler ?<br>Can anyone give the detail information what's going on in backyard ?<br><br><br>Thanks <br><br>