title: Is it possible to wake a user Process from a kernel module
body: <p>I have  a user level process which is sleeping currently, by using <code>sleep()</code> function. I am trying to write a kernel module which can first extract the <code>task_struct</code> of the user process from its PID, and then can wake the process. Till date I have implemented the code for getting the task_struct from PID. But, I dont know of any function which can wake up that process. I tried <code>wake_up_process(task_struct)</code>, though its returning 1, i.e, success in waking up the process, but the the <code>printf()</code> statement just after the sleep() statement of the user process is not getting executed. Will changing the <code>state</code> of the task_struct help? Or there's some another approach for doing the same? Please guide me further.</p>