Re: Re: Changing the state of a process

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux