Date: Tue, 3 Nov 1998 09:15:55 -0500 (EST) From: Brian Feldman <green@zone.syracuse.net> To: Luoqi Chen <luoqi@watermarkgroup.com> Cc: dot@dotat.at, current@FreeBSD.ORG Subject: Re: Linux clone() Message-ID: <Pine.BSF.4.05.9811030911450.27548-100000@zone.syracuse.net> In-Reply-To: <199811030332.WAA24322@lor.watermarkgroup.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hmm.. AH! Now we're getting somewhere! I was planning to add that flag mapping before I had a final version of the patch, and still am. Okay, wonderful, I only get a stack pointer... I shouldn't fiddle with p2's eip then, or should I set it to a copyin of the long function pointer from the end of the stack... sorry, I never knew assembly :( Brian Feldman On Mon, 2 Nov 1998, Luoqi Chen wrote: > > Hmmm.. okay this would be a good test. Right now I'm going thru the > > various linuxthreads example programs.... The patch seems to be doing > > something wrong, and I'm unable to figure out what to do, due to Linux's > > humongously gross syscall system (so the kernel doesn't help me). It also > > seems now I was implementing a LIBRARY function, which is just a wrapper. > > If I could get my hands on what the real system calls' args are it would > > be great. > > > > Brian Feldman > > > It seems that clone() the syscall takes two arguments: > struct linux_clone_args { > int flags; > void *stack; > }; > the wrapper in library takes care of pushing the function address and its > argument on to the stack. You probably also want to map linux clone flags > to that of rfork's: CLONE_FILES -> RFFDG, CLONE_VM -> RFMEM. > > -lq > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.05.9811030911450.27548-100000>