This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Hanging at GetModuleFileName in inside_kernel function


On Tue, Feb 28, 2006 at 11:10:05AM -0800, Peter Rehley wrote:
>
>On Feb 23, 2006, at 6:27 PM, Christopher Faylor wrote:
>
>>On Thu, Feb 23, 2006 at 03:43:25PM -0800, Peter Rehley wrote:
>>>On Feb 23, 2006, at 10:13 AM, Dave Korn wrote:
>>>
>>>>On 23 February 2006 16:20, Peter Rehley wrote:
>>>>
>>>>>Yeah, I saw that change, and I tried yesterdays snapshot but it  
>>>>>still
>>>>>hung.  I also did some more googling and found that someone  
>>>>>submitted
>>>>>a patch a few years ago.  The patch checked to see if it was inside
>>>>>the ntdll.dll by looking at the handle.
>>>>>http://www.cygwin.com/ml/cygwin-patches/2003-q2/msg00004.html
>>>>>
>>>>>I found this google too.
>>>>>http://blogs.msdn.com/oldnewthing/archive/2004/01/28/63880.aspx
>>>>>
>>>>>I'm going to try that patch today and see what happens.   
>>>>>Christopher
>>>>>didn't apply it because it was a bandage and didn't really fix the
>>>>>bigger problem.
>>>
>>>I tried putting the patch in place, and it stopped hanging at the
>>>place I reported.  I had print statements to verify that it went
>>>through the section.  However, the program still hung at some point.
>>>I tracked down a couple of other GMFN calls that used non-null
>>>handles and tried using the technique that the patch had.
>>
>>Does the latest snapshot behave any differently?  It has a temporary
>>patch which stops cygwin from suspending (for long) when the  
>>current IP
>>is in the cygwin DLL itself.
>
>It seems like an improvement.  It didn't hang, but after about 4000  
>iterations of the test script it got a segmentation fault.  It ran  
>for 12 hours with another configure script in a separate window or  
>about 11 hours and 45 minutes longer than before.  This is with the  
>20060227 snapshot.
>
>Attached is the stackdump.

...which is a stackdump deep within bash itself, pretty far from any
cygwin functions.

FWIW, I'm removing the temporary patch.  Hopefully protecting exit()
against signal interruptions should be enough to avoid this problem.

cgf

--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]