On Thu, Oct 2, 2008 at 3:55 PM, Mitul Modi <mituld.modi@xxxxxxxxx> wrote: > > > On Wed, Oct 1, 2008 at 6:12 PM, srimugunthan dhandapani > <muggy.mit@xxxxxxxxx> wrote: >> >> hi all, >> I want to understand how the fork call return 0 in child and 'pid of >> child' in the parent. >> Presently my (naive)understanding is that the %eax value is stored >> differently for the child and the parent. >> Both the child and the parent returns from fork to the same instruction >> address, but will have different return values according to %eax. Can someone who reads assembly well decode "ret_from_fork" ??? I tried but couldn't understand much........What is that assembly function supposed to do ? Thanks - Manish > > as per my understanding child is not returning from the fork insted > "wake_up_new_task" function will add the child process is runqueue. > And caller will return with the child process by "return nr"; > >> >> Is my understanding correct? >> Can somebody point out where exaclty in the source this is taken care of? > > copy_process is called from the do_fork. copy_process function is created > new task_struct for the child process. get new process id for the child > process > > But still i am not getting where it is setting the pid value to 0 for child > process. > > please correct if i am wrong. > > thanks, > mitul modi > >> >> Thanks, >> Mugunthan > > -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ