delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2004/03/04/11:34:06

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
X-Authentication-Warning: thing1-200.fsi.com: ford owned process doing -bs
Date: Thu, 4 Mar 2004 10:33:37 -0600 (CST)
From: Brian Ford <ford AT vss DOT fsi DOT com>
X-X-Sender: ford AT thing1-200
Reply-To: cygwin AT cygwin DOT com
To: cygwin AT cygwin DOT com
Subject: Re: Snapshot 20040225: make hangs/errors out
In-Reply-To: <20040304155948.GA21030@redhat.com>
Message-ID: <Pine.GSO.4.58.0403041029210.17921@thing1-200>
References: <403E72B7 DOT 9050305 AT scytek DOT de> <403FD3AC DOT 7010300 AT scytek DOT de> <c205f3$jel$1 AT sea DOT gmane DOT org> <4044E025 DOT 2060501 AT scytek DOT de> <20040302204752 DOT GA11909 AT redhat DOT com> <40451E42 DOT 4070806 AT scytek DOT de> <4044B845 DOT 7000003 AT scytek DOT de> <20040303033617 DOT GA5325 AT redhat DOT com> <c25p18$tn3$1 AT sea DOT gmane DOT org> <20040304021428 DOT GA5815 AT redhat DOT com> <20040304155948 DOT GA21030 AT redhat DOT com>
MIME-Version: 1.0
X-IsSubscribed: yes

Um..., stupid question.  As usual, I haven't thought about this much, or
traced it too far yet, but...

__sigbe begins by pushing ebx, edx, and eax.  It ends by poping just eax
and edx.  Why don't you need to pop ebx?

On Thu, 4 Mar 2004, Christopher Faylor wrote:

> I see what is causing the symptom but not what is causing the problem.
> I spent a sleepless night modelling multi-threaded signal interrupts
> in my head but I'm still not any closer to understanding the problem.
>
> The problem is that malloc allocates some memory, puts the address of
> the memory in the eax register, and then returns.  In the meantime, two
> signals have come in, so rather than return immediately, malloc returns
> to the signal handler and then the signal handler is called again.  In
> some cases, this causes the eax register to become zero and so make
> (rightly) complains.  In theory, this shouldn't happen since the eax
> register should have been saved on the stack.
>
> Nope.  Typing an explanation doesn't help me figure this out.  Bummer.
>

-- 
Brian Ford
Senior Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
Phone: 314-551-8460
Fax:   314-551-8444

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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