[Mono-bugs] [Bug 557921] System.Diagnostics.Process: error creating process handle

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Fri Feb 19 16:30:09 EST 2010


http://bugzilla.novell.com/show_bug.cgi?id=557921

http://bugzilla.novell.com/show_bug.cgi?id=557921#c2


Chris Eldredge <chris.eldredge at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |chris.eldredge at gmail.com

--- Comment #2 from Chris Eldredge <chris.eldredge at gmail.com> 2010-02-19 21:30:08 UTC ---
We ran into this as well.  It looks like mono/io-layer/handles.c:481 is the
culprit.  There are initially 256 shared handles available for allocation and
if this number is exceeded no more can be allocated.  There's a command that
says, "FIXME: grow the arrays."

I suspect when this happens the private handle previously allocated in the same
function is leaked.
Increasing _WAPI_HANDLE_INITIAL_COUNT (wapi-private.h:125) to some arbitrarily
high number works around the issue but doesn't really fix it.

Additionally, processes.c should set ret = FALSE near line 1037 to tell the
calling code that it failed.  It doesn't and as a result no Win32Exception gets
thrown.  In any case, once it fails it seems to get stuck even after some
shared handles are deallocated by processes that exit.

Backporting the fix from bug 536776 (r141381) does not resolve the issue.
-----------------------------------------------------------------------------

Debian 5.0 (Linux localhost 2.6.26-2-amd64 #1 SMP Thu Nov 5 02:23:12 UTC 2009
x86_64 GNU/Linux)

Mono JIT compiler version 2.4.2.3 (/tags/mono-2-4-2-3/mono r146859 Fri Feb 19
15:54:27 EST 2010)
Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.com
        TLS:           __thread
        GC:            Included Boehm (with typed GC)
        SIGSEGV:       altstack
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list