X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-bounces using -f Message-ID: <3C729854.7EBE42E4@yahoo.com> From: CBFalconer Organization: Ched Research X-Mailer: Mozilla 4.75 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: DS and ESP References: <3c727c49 DOT sandmann AT clio DOT rice DOT edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 22 Date: Tue, 19 Feb 2002 18:53:56 GMT NNTP-Posting-Host: 12.90.170.65 X-Complaints-To: abuse AT worldnet DOT att DOT net X-Trace: bgtnsc05-news.ops.worldnet.att.net 1014144836 12.90.170.65 (Tue, 19 Feb 2002 18:53:56 GMT) NNTP-Posting-Date: Tue, 19 Feb 2002 18:53:56 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Charles Sandmann wrote: > > > That is correct. Unless interrupts are disabled when [code using > > values below ESP] executes it's extremely broken. And it might be > > broken even if interrupts are disabled (page fault e. g.). > > If the DPMI provider is done correctly either hardware interrupts or > even page faults work fine even when the user ESP is invalid. All of > these should be handled on the locked 4Kb DPMI internal stack and > never touch the user stack. So, it turns out that code isn't broken :-) Doesn't the interrupt itself to the stack switching code have to store a return address on the user stack? and maybe the flags too. Or is that all in the hardware? -- Chuck F (cbfalconer AT yahoo DOT com) (cbfalconer AT XXXXworldnet DOT att DOT net) Available for consulting/temporary embedded and systems. (Remove "XXXX" from reply address. yahoo works unmodified) mailto:uce AT ftc DOT gov (for spambots to harvest)