Bug 38641 - Assertion at sgen-stw.c:73, condition `info->client_info.stack_start >= info->client_info.stack_start_limit && info->client_info.stack_start < info->client_info.stack_end' not met
Summary: Assertion at sgen-stw.c:73, condition `info->client_info.stack_start >= info-...
Alias: None
Product: Runtime
Classification: Mono
Component: GC (show other bugs)
Version: 4.2.0 (C6)
Hardware: PC Linux
: --- normal
Target Milestone: ---
Assignee: Vlad Brezae
Depends on:
Reported: 2016-02-10 17:41 UTC by Jonathan
Modified: 2016-03-07 11:07 UTC (History)
3 users (show)

See Also:
Is this bug a regression?: ---
Last known good build:

output log gzipped (45.47 KB, application/x-gzip)
2016-02-10 17:41 UTC, Jonathan
ssh public key (396 bytes, text/plain)
2016-02-23 16:51 UTC, Vlad Brezae
pkg build (3.01 KB, application/octet-stream)
2016-02-23 20:57 UTC, Jonathan

Description Jonathan 2016-02-10 17:41:17 UTC
Created attachment 14987 [details]
output log gzipped

While trying to build fsharp (tag I've run into this issue:

                * Assertion at sgen-stw.c:73, condition `info->client_info.stack_start >= info->client_info.stack_start_limit && info->client_info.stack_start < info->client_info.stack_end' not met
                  at <unknown> <0xffffffff>
                  at (wrapper managed-to-native) object.__icall_wrapper_mono_gc_alloc_obj (intptr,intptr) <0xffffffff>
                  at (wrapper alloc) object.AllocSmall (intptr,intptr) <0xffffffff>
                  at Internal.Utilities.Collections.Tagged.MapTree`2<TKey_REF, TValue_REF>.NewMapNode (TKey_REF,TValue_REF,Internal.Utilities.Collections.Tagged.MapTree`2<TKey_REF, TValue_REF>,Internal.Utilities.Collections.Tagged.MapTree`2<TKey_REF, TVal
ue_REF>,int) <0x00040>


Full log file attached.

Additional info:

I am running mono on Alpine Linux on a kvm-based Virtual Machine

> uname -a
Linux piny 4.1.15-5-grsec #6-Alpine SMP Wed Jan 20 14:05:28 GMT 2016 x86_64 GNU/Linux

> free -m
             total       used       free     shared    buffers     cached
Mem:          3952       1171       2781          0         88        975
-/+ buffers/cache:        106       3846
Swap:         4095          0       4095

> mono -V
Mono JIT compiler version 4.2.2 (Stable Wed Feb 10 17:14:47 UTC 2016)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       normal
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none
        Misc:          softdebug 
        LLVM:          supported, not enabled.
        GC:            sgen

Mono was built with: ./autogen.sh \
                --build=$CBUILD \
                --host=$CHOST \
                --prefix=/usr \
                --sysconfdir=/etc \
                --mandir=/usr/share/man \
                --infodir=/usr/share/info \
                --localstatedir=/var \
                --disable-boehm \
                --enable-parallel-mark \
                --with-mcs-docs=no \

Please let me know if you require any other information.  I'd be happy to provide access to the VM (all I need is a ssh public key).

Comment 1 Jonathan 2016-02-10 18:23:31 UTC
Of note:  Compiling fsharp using the Xamarin provided builds on Unbuntu 15.10 works.
Comment 2 Vlad Brezae 2016-02-23 16:51:57 UTC
Created attachment 15151 [details]
ssh public key

Hey Jonathan,

I don't seem to be able to compile mono on my own alpine linux VM. Could I have access to your VM in order to debug the crash ? (I've attached my public ssh key) Does it have a consistent repro ? Thanks
Comment 3 Jonathan 2016-02-23 20:57:54 UTC
Created attachment 15155 [details]
pkg build

Hi Vlad,

Yes, this issue is reproducible 100% of the time.

I don't have access to my virtual machine at the moment (I will in about 2 weeks).  In the meantime, you can build mono on your vm like so:

# add the testing repo to /etc/apk/repositories
@testing http://dl-3.alpinelinux.org/alpine/edge/testing

# update & upgrade to latest packages
apk update
apk upgrade

# install libgdiplus-4.2
apk add libgdiplus

# add your user to the abuild group
adduser <youruser> abuild

# build mono using the attached files (pkg description)
tar xfz mono.tar.gz
cd mono

# install mono packages
apk add ~/packages/$USER/x86_64/mono-*.apk

# grab & build fsharp
git clone https://github.com/fsharp/fsharp.git
cd fsharp
git checkout
./autogen.sh --prefix=/usr

# note errors

If you have any questions please do let me know.

Note You need to log in before you can comment on or make changes to this bug.