www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/12/09/01:47:48

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f
From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <10112090644.AA19383@clio.rice.edu>
Subject: Re: v2.03 refresh ready for review/testing
To: djgpp-workers AT delorie DOT com (DJGPP developers)
Date: Sun, 9 Dec 2001 00:44:27 -0600 (CST)
X-Mailer: ELM [version 2.5 PL2]
Mime-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com

> I have built DJGPP 2.03 refresh on Win 98 box and copied the files onto my
> XP box to h:\djgpp. I have noticed a few quirks, like what was ocuring when
> we were trying to get the dosexec.c stuff sorted out for Win 2K.
> 
> I have been able to re-build all of the packages, except GCC 2.9.5.3. I have
> so far seen the following problems:-
>     1) Build fail as it cannot pass the argument list to LD.EXE

CVS versions of the spawn enhanced the command argument passing, so if
you have a newer item in the mix you might have problems?

>     2) Out of memory after the build fails

That could be related to crashes.  

>     3) CMD.EXE disappeared once after a build fail when I hit the enter key

Never seen that, but I do see them loose their NT scroll bar and become
fixed DOS size windows, even under CMD.EXE ...

> I spotted in src\libc\dos\process\dosexec.c that at about line 389 that the
> 2.04 has the following :-
>   /* Work around the W2K NTVDM bug; see dpmiexcp.c for detailed
>      explanations.  */
>   __maybe_fix_w2k_ntvdm_bug();
> 
> The updated 2.03 file does not have this. The function is direct_exec_tail_1
> (). Could this be the cause of the problems I haev seen?

Maybe, but it shouldn't be if we really understand the problem.  The nesting
problems are caused by the child exit setting the internal NTVDM psp to
zero in the process of exiting.  This shouldn't be a problem until the parent
exits (if we exit with it zero that's when it crashes).  We have code in our
exit to set it back.  Now, there may be some other case where the right after
the exit set is needed.  If required I can slap a bogus prototype in both
modules and we can duplicate the 2.04 behavior, but it does start to change
the external visible symbol list...

When I saw these problems I could always track some non-fixed module down
in my tool chain, but you may have found a real problem (why we are testing).

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019