Mono's XSP crashes on browser connection

Tom McLaughlin tmclaugh at sdf.lonestar.org
Mon Feb 28 00:43:25 GMT 2005


Hi, I have a port for Mono's XSP web server for ASP.NET but it has never
worked from 1.0 to the latest version, 1.0.6.  The crash has always been
the same.  Finally I've had a chance to sit down with a machine and
generate a usable backtrace.  The attached backtrace was generated on
-STABLE from February 19 using Mono 1.1.4 after connecting to the server
with a browser.  (Mono 1.1.4 does not build on -CURRENT right now which
has become the version I'm focusing on for crashes since 1.2 will be out
in late April.  The crash does occur on Mono 1.0.6 as well which is in
ports and does build on -CURRENT.)  If needed, I can regenerate the
backtrace using -CURRENT once 1.1.4 builds.  The xsp and mono-devel
ports can be found here:

http://tmclaugh.freeshell.org/files/mono/

Thanks,
Tom


Backtrace:

[tom at europe-monodev test]$ cd /usr/local/share/doc/xsp/test
[tom at europe-monodev test]$ gdb /usr/local/bin/mono
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i386-marcel-freebsd"...
(gdb) run /usr/local/lib/mono/1.0/xsp.exe --address 192.168.1.29
Starting program: /usr/local/bin/mono /usr/local/lib/mono/1.0/xsp.exe
--address 192.168.1.29
xsp
Listening on port: 8080
Listening on address: 192.168.1.29
Root directory: /usr/local/share/doc/xsp/test
Hit Return to stop the server.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 4 (LWP 100105)]
0x2836b27c in _lock_acquire (lck=0x8203700, lu=0x8428248, prio=0)
    at /usr/src/lib/libpthread/sys/lock.c:182
182     /usr/src/lib/libpthread/sys/lock.c: No such file or directory.
        in /usr/src/lib/libpthread/sys/lock.c
(gdb) bt full
#0  0x2836b27c in _lock_acquire (lck=0x8203700, lu=0x8428248, prio=0)
    at /usr/src/lib/libpthread/sys/lock.c:182
        i = 0
        lval = -1083264012
        __func__ = "_lock_acquire"
#1  0x2835e537 in mutex_lock_common (curthread=0x8428200, m=0x285668e0,
    abstime=0x0) at /usr/src/lib/libpthread/thread/thr_mutex.c:519
        private = 0
        ret = 0
#2  0x2835fb03 in __pthread_mutex_lock (m=0x285668e0)
    at /usr/src/lib/libpthread/thread/thr_mutex.c:844
        curthread = (struct pthread *) 0x8428200
        ret = 0
#3  0x080e8af9 in WaitForSingleObjectEx (handle=0x1c98, timeout=500,
    alertable=0) at handles-private.h:100
        ret = 135133339
        waited = 1
        abstime = {tv_sec = 1164, tv_nsec = 1056}
        thr_ret = 0
        apc_pending = 0
        current_thread = 0x1c71
        __PRETTY_FUNCTION__ = "WaitForSingleObjectEx"
#4  0x080df8d6 in CreateProcess (appname=0x18, cmdline=0x876455c,
    process_attrs=0x0, thread_attrs=0x0, inherit_handles=1,
create_flags=1024,
    new_environ=0x0, cwd=0x0, startup=0xbf6eb594,
process_info=0xbf6eb584)
    at processes.c:437
        cmd = (gchar *) 0x881ca00 "'/usr/local/bin/mcs'"
        prog = (gchar *) 0x881ca40 "/usr/local/bin/mcs"
        full_prog = (
    gchar *) 0x8809c00
"'/usr/local/bin/mcs' /target:library /debug- /optimize+ /warn:1 /out:
\"/var/tmp/tom-temp-aspnet/854b17b2/14374.dll\" /r:\"System.dll\" /r:
\"System.Xml.dll\" /r:\"System.Data.dll\" /r:\"System.Web.dll\" /r:
\"Syst"...
        args = (
    gchar *) 0x8809800 "/target:library /debug- /optimize+ /warn:1 /out:
\"/var/tmp/tom-temp-aspnet/854b17b2/14374.dll\" /r:\"System.dll\" /r:
\"System.Xml.dll\" /r:\"System.Data.dll\" /r:\"System.Web.dll\" /r:
\"System.Web.Services.dll\" "...        args_after_prog = (
    gchar *) 0x8809800 "/target:library /debug- /optimize+ /warn:1 /out:
\"/var/tmp/tom-temp-aspnet/854b17b2/14374.dll\" /r:\"System.dll\" /r:
\"System.Xml.dll\" /r:\"System.Data.dll\" /r:\"System.Web.dll\" /r:
\"System.Web.Services.dll\" "...        dir = (gchar *) 0x881ca20
"/usr/local/share/doc/xsp/test"
        env = 1056
        stored_dir = 88
        stored_prog = 1164
        i = 24
        ret = 1
        stdin_handle = 0xbf6eb584
        stdout_handle = 0x18
        stderr_handle = 0x0
        pid = 23635
        tid = 0
        process_handle = 0x1c98
        thread_handle = 0x1c99
        process_handle_data = (struct _WapiHandle_process *) 0xbf6eb52c
#5  0x080b764c in ves_icall_System_Diagnostics_Process_Start_internal (
    appname=0x875f9d8, cmd=0x8764550, dirname=0x8371700,
stdin_handle=0x0,
    stdout_handle=0x0, stderr_handle=0x0, process_info=0xbf6eb6ac)
    at process.c:847
        ret = 24
        dir = (gunichar2 *) 0x0
        startinfo = {cb = 68, lpReserved = 0x0, lpDesktop = 0x0,
  lpTitle = 0x0, dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0,
  dwXCountChars = 0, dwYCountChars = 0, dwFillAttribute = 0,
  dwFlags = STARTF_USESTDHANDLES, wShowWindow = 0, cbReserved2 = 0,
  lpReserved2 = 0x0, hStdInput = 0x0, hStdOutput = 0x18, hStdError =
0x1a}
        procinfo = {hProcess = 0x1c98, hThread = 0x1c99, dwProcessId =
23635,
  dwThreadId = 0}
        shell_path = (gunichar2 *) 0x8824a00
        env_vars = (gchar *) 0x0
        free_shell_path = 0
        newcmd = (gchar *) 0xbf6eb6ac ""
        tmp = (gchar *) 0x8760f90 "\020j\200\b"
#6  0x28d038f6 in ?? ()
No symbol table info available.
#7  0x0875f9d8 in ?? ()
No symbol table info available.
#8  0x08764550 in ?? ()
No symbol table info available.
#9  0x08371700 in ?? ()
No symbol table info available.
#10 0x00000000 in ?? ()
No symbol table info available.
#11 0x00000018 in ?? ()
No symbol table info available.
#12 0x0000001a in ?? ()
No symbol table info available.
#13 0xbf6eb6ac in ?? ()
No symbol table info available.
#14 0xbf6ebb0c in ?? ()
No symbol table info available.
#15 0x0841a6c8 in ?? ()
No symbol table info available.
#16 0x08808dc0 in ?? ()
No symbol table info available.
#17 0x0875f9d8 in ?? ()
No symbol table info available.
#18 0x08761e10 in ?? ()
No symbol table info available.
#19 0x08760f90 in ?? ()
No symbol table info available.
#20 0xbf6eb640 in ?? ()
No symbol table info available.
#21 0x28d038c4 in ?? ()
No symbol table info available.
#22 0xbf6eb6d8 in ?? ()
No symbol table info available.
#23 0x28d02eb5 in ?? ()
No symbol table info available.
#24 0x0875f9d8 in ?? ()
No symbol table info available.
#25 0x08764550 in ?? ()
No symbol table info available.
#26 0x08371700 in ?? ()
No symbol table info available.
#27 0x00000000 in ?? ()
No symbol table info available.
#28 0x00000018 in ?? ()
No symbol table info available.
#29 0x0000001a in ?? ()
No symbol table info available.
#30 0xbf6eb6ac in ?? ()
No symbol table info available.
#31 0xbf6eb684 in ?? ()
No symbol table info available.
#32 0x08070f7f in x86_magic_trampoline (eax=141949400, ecx=141968720,
    edx=137828096, esi=0, edi=24, ebx=26, code=0x8760f90 "\020j\200\b",
    m=0xbf6eb684) at tramp-x86.c:123
        reg = 8 '\b'
        disp = 141949400
        o = 0x18 <Error reading address 0x18: Bad address>
        addr = 0x8761e10
        __PRETTY_FUNCTION__ = "x86_magic_trampoline"
Previous frame inner to this frame (corrupt stack?)
(gdb)

-- 

BSD# Project - Porting Mono to FreeBSD
http://forge.novell.com/modules/xfmod/project/?bsd-sharp



More information about the freebsd-threads mailing list