This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Follow-fork-mode and inferiors


On Wednesday 13 April 2011 14:33:01, Kevin Pouget wrote:
> Hello,
> 
> I noticed a behavior which appears strange to me, I would like to know
> if it was expected:
> 
> > (gdb) list
> > 1    int main() {
> > 2        fork() ;
> > 3    }
> >
> > (gdb) break 3
> > (gdb) set follow-fork-mode child
> > (gdb) run
> > ...
> > Breakpoint 1, main () at fork.c:3
> > 3    }
> > (gdb) info inferiors
> >   Num  Description       Executable
> > * 2    process 26039     /home/kevin/travail/arm/perso/root/sample/fork-threads/fork
> >   1    <null>            /home/kevin/travail/arm/perso/root/sample/fork-threads/fork
> 
> why are there two inferiors? I expected either to stay in inf 1 (if
> the pid of an inferior can change) or inf 1 to disappear, but not to
> keep both of them!

Hmm, if detach-on-fork is on (the default), yeah.
I'd argue for staying in inf 1.  linux-nat.c:linux_child_follow_fork
is the place to look.  The problem is the vfork case, and
what to do with the vfork parent.

-- 
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]