Subject: Re: third results (was: ddb & shared libs)
To: Jason Thorpe <thorpej@nas.nasa.gov>
From: None <jiho@postal.c-zone.net>
List: tech-kern
Date: 04/04/1998 12:49:05
On 04-Apr-98 Jason Thorpe wrote:

>> I'm getting ready to "back-port" your new vfork() into NetBSD 1.2/i386, so
>> I can test the difference objectively.
>
> You'll need to make some changes to pmap.c, as well.

Are pmap.c changes required JUST to install the new vfork(), or only if I want
to install UVM also?

>> This doesn't look like it ought to present any difficulties -- except that
>> in the i386 port cpu_wait() is a null #define, so the two "user structure"
>> allocations apparently never get freed on exit.  (Unless I missed the place
>> where they get freed, which wouldn't be too surprising...)
>
> They are freed in locore.  You have to keep them around until after the kernel
> has switched to a new stack.

I think I just figured that out.  It's the allocation/deallocation of USPACE,
which has moved from a vmspace mapping to a kmem allocation, making the new
vfork() possible.  Correct?

By the way, are you aware of any user programs that have had to be modified to
work with this shared vmspace vfork()?  David Brownlee keeps telling me he saw
a flurry of commits on the source-changes mailing list to that effect.  But I
don't see anything about it in CHANGES for -current (as of yesterday).


--Jim Howard  <jiho@mail.c-zone.net>


----------------------------------
E-Mail: jiho@mail.c-zone.net
Date: 04-Apr-98
Time: 12:49:11

This message was sent by XFMail
----------------------------------