Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Mar 1999 00:04:20 -0500 (EST)
From:      Alfred Perlstein <bright@rush.net>
To:        "John S. Dyson" <dyson@iquest.net>
Cc:        samit@usa.ltindia.com, commiters@freebsd.org, freebsd-current@freebsd.org
Subject:   Re: rfork()
Message-ID:  <Pine.BSF.3.96.990320235815.4169C-100000@cygnus.rush.net>
In-Reply-To: <199903210412.XAA04326@y.dyson.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 20 Mar 1999, John S. Dyson wrote:

> Michael E. Mercer said:
> > Hello,
> > 
> > This was posted to freebsd-questions with no reply.
> > I tried this and the child process created a core file.
> > I also tried the other options and they seem to work.
> > Just RFPROC and RFMEM DON'T!
> > 
> rfork(RFMEM) doesn't easily work from C.  You need to
> create an assembly stub.
> 
> -- 
> John                  | Never try to teach a pig to sing,
> dyson@iquest.net      | it makes one look stupid
> jdyson@nc.com         | and it irritates the pig.
> 

I've seen about 6 people ask about this because the manual lies about
what is done.  I asked a while back about it, and John was kind enough
to dig up some code that used rfork to properly split the stack should
I try to dig it up?

In the meantime, can someone commit this or suggest something?

thanks,
-Alfred

Index: rfork.2
===================================================================
RCS file: /home/ncvs/src/lib/libc/sys/rfork.2,v
retrieving revision 1.8
diff -u -r1.8 rfork.2
--- rfork.2	1999/01/26 02:38:09	1.8
+++ rfork.2	1999/03/21 04:49:10
@@ -54,7 +54,8 @@
 will then inherit all the shared segments the parent process owns. Other segment
 types will be unaffected.  Subsequent forks by the parent will then
 propagate the shared data and bss between children.  The stack segment
-is always split.  May be set only with
+is not split and must be allocated manually via an assembler subroutine.  
+May be set only with
 .Dv RFPROC .
 .It RFSIGSHARE
 If set, the kernel will force sharing the sigacts structure between the




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.3.96.990320235815.4169C-100000>