Messages in this thread | | | Date | Sat, 16 Feb 2008 01:54:05 +0200 | Subject | Re: Linux i386 clone(): %ebx 'frobbing' ? | From | "Ahmed S. Darwish" <> |
| |
On Sat, Feb 16, 2008 at 12:28:11AM +0100, Andreas Schwab wrote: > "Ahmed S. Darwish" <darwish.07@gmail.com> writes: > > > Hi Andreas, > > > > On Fri, Feb 15, 2008, Andreas Schwab wrote: > >> "Ahmed S. Darwish" <darwish.07@gmail.com> writes: > >> > >> > I don't understand how the `fn' argument reached the child thread > >> > in the %ebx register. It's said in the comment that `fn' will be > >> > popped to child 'in the ebx frobbing below'. But what does that mean ? > >> > >> See "popl %ebx" after "int $0x80". > >> > > > > I hope I'm not misreading something obvious, but I can't find > > the code where FUNC(%esp) is stored in %ebx before %ebx value > > got pushed in the stack (and restored in above 'popl' statement). > > It is stored in the new stack for the child, as explained in the > comment. The parent has a different stack. >
Ooh great, I got it. Sorry, my mind didn't connect the dots though I read the comment several times. Thanks a lot for bearing with me :).
Regards,
-- Ahmed S. Darwish Homepage: http://darwish.07.googlepages.com Blog: http://darwish-07.blogspot.com
| |