[M3commit] CVS Update: cm3

Jay jay.krell at cornell.edu
Mon Jan 12 12:58:34 CET 2009


Eek using the packed types in Uexec.i3 instead of my portable Uwaitpid.i3, Uwaitpid.c that unpacked everything into a whole number of bytes (no bit fields or shifting for the caller to wory about), and formed the value that I believe the loopholes were historically getting.
A big part of the change.
 
 - Jay



CC: hosking at elego.de; m3commit at elegosoft.comFrom: hosking at cs.purdue.eduTo: jay.krell at cornell.eduSubject: Re: [M3commit] CVS Update: cm3Date: Mon, 12 Jan 2009 22:26:01 +1100


Eek, what?

On 12 Jan 2009, at 21:28, Jay wrote:

Eek, was this really the way to go?It really seemed better before to me.Before it was automatically portable without declaring the packed return type or NOHANG.  - Jay

From: jay.krell at cornell.eduTo: hosking at elego.de; m3commit at elegosoft.comSubject: RE: [M3commit] CVS Update: cm3Date: Mon, 12 Jan 2009 10:11:17 +0000 > relies on particular endian-ness of the status > word they return. Really, those clients should > be using proper bit-shifts and bit-masks to extract > the right values rather than some endian- dependent RECORD layout defined in Uexec  Wasn't Uwaitpid.c a good portable way to do exactly that?  I guess it can be written in Modula-3 though, if the headers are cloned as they are. Aren't {I386,AMD64}_DARWIN broken here?  Besides all "my" ports, which don't define those types.  Yeah yeah, all I have to do is switch on endian and I can introduce them.. I'll see about Cygwin pthreads.  - Jay> Date: Mon, 12 Jan 2009 10:20:33 +0000> To: m3commit at elegosoft.com> From: hosking at elego.de> Subject: [M3commit] CVS Update: cm3> > CVSROOT: /usr/cvs> Changes by: hosking at birch. 09/01/12 10:20:33> > Modified files:> cm3/m3-libs/m3core/src/thread/: ThreadPScheduler.m3 > ThreadPWait.m3 > cm3/m3-libs/m3core/src/thread/Common/: SchedulerPosix.i3 > cm3/m3-libs/m3core/src/unix/Common/: UtimeC.c Uwaitpid.i3 > m3makefile > cm3/m3-libs/libm3/src/os/POSIX/: ProcessPosixCommon.m3 > cm3/m3-libs/sysutils/src/POSIX/: SystemPosix.m3 m3makefile > > Log message:> Try to clean up mess with Process.Wait and System.Wait based on waitpid.> > Packing is now returned to Process.Wait and System.Wait where it used to be.> > Not sure if this re-packing is needed by clients, but should verify.> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3commit/attachments/20090112/a8f82c59/attachment-0002.html>


More information about the M3commit mailing list