Hello Rajaram ... > Please look in to my latest reply below with tag <Raja1>. For simplicity, I think you just need to comment on the related part :) It is a bit confusing for me to check the reply. I can track the history of our conversation by simply looking at your previous post :) > <Raja1> hey, just now I asked my IT people. They tell my machine is > P4 HT enabled. Gotcha...I smell inter processor value assignment problem. So actually what we need here is an atomic operation (like you did with set_task_state() ) and/or prevent the processor to do instruction re-ordering. Thomas, would you mind to CMIIW here? > <Raja1> I checked. insmod was still in zombie state. OK that means, the parent (bash) hasn't got a chance to clean the task structure.In other word, it is still in non runnable state. > May be it is also like this : when we try to convert back the state > from TASK_UNINTERRUPTIBLE to TASK_INTERRUPTIBLE, it need not notice > the pending SIGCHLD signal ( infact any signal ). But only respond > when we force kill it using kill -9. (another silly me) I remember now....signal handling is done only when you get back to user space. In this case, your bash is still in kernel space (sleeping state), that's why it doesn't clean up the insmod's task structure. > hmm..these are all my guesses..need to actually patiently look in to > the code and understand :) <Raja1> Same here....but your question is a good practice for me to re-study all I know about process management/scheduling...so I think we are on win-win situation. BTW, I suggest to write an article about it once you find out the whole picture and post the article to kernelnewbies' wiki. That way, other people will get the same help, not just by reading archieve, but also by reading someone's article. regards Mulyadi -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/