[Mono-list] Mono heapshot profiler woes

Alan alan.mcgovern at gmail.com
Mon Nov 7 05:45:12 EST 2011


Hi,

Running with sgen disabled will result in a completely useless log file.
The boehm GC does not have the required hooks implemented to actually track
allocations in the log profiler. The simplest testcase would be for you to
provide the source code (confidentially if required) for your app or to
provide a binary which can be used to diagnose the issue. A crash as
reliable as you describe should be relatively easy to diagnose once we have
a way to reproduce it.

Alan

On 6 November 2011 23:20, Nicholas Frechette <zeno490 at gmail.com> wrote:

> Hi,
> I just tried without sgen. There is no crash, a log is generated and
> there seems to be data inside but heapshot fails to interpret the data
> afterwards. It shows 1 object for every snapshot...
>
> I'm not sure if I can manage to create a test case for this. I have a
> fairly simple gtk# application, nothing fancy: no interop besides
> gtk#, no heavy usage of the GC, mostly simple C# code.
>
> I'll see what I can do next weekend.
>
> On Sun, Nov 6, 2011 at 10:50 AM, Rodrigo Kumpera <kumpera at gmail.com>
> wrote:
> > This sucks, I did hope 2.10.6 would fix it.
> > Can you provide a test case for this crash? This way it's a lot easier to
> > diagnose and fix it.
> >
> > On Sat, Nov 5, 2011 at 5:26 PM, Nicholas Frechette <zeno490 at gmail.com>
> > wrote:
> >>
> >> I upgraded to mono 2.10.6, the latest official stable release. I still
> >> get a similar result, see below.
> >> Are there extra dependencies required for it to work?
> >>
> >> [mono-2.10] ~/projects/rovisualizer-dev/rovisualizer/bin/Debug @ mono
> >> --version
> >> Mono JIT compiler version 2.10.6 (tarball Sat Nov  5 14:41:55 EDT 2011)
> >> Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors.
> >> www.mono-project.com
> >>        TLS:           __thread
> >>        SIGSEGV:       altstack
> >>        Notifications: epoll
> >>        Architecture:  x86
> >>        Disabled:      none
> >>        Misc:          softdebug
> >>        LLVM:          supported, not enabled.
> >>        GC:            Included Boehm (with typed GC and Parallel Mark)
> >>
> >> [mono-2.10] ~/projects/rovisualizer-dev/rovisualizer/bin/Debug @
> >> ./profile.sh
> >> Stacktrace:
> >>
> >>
> >> Native stacktrace:
> >>
> >>        mono-sgen() [0x80e391b]
> >>        mono-sgen() [0x8129e8b]
> >>        mono-sgen() [0x805d431]
> >>        [0x9c740c]
> >>        mono-sgen() [0x8189ea7]
> >>        mono-sgen(mono_object_new_alloc_specific+0x28) [0x81676b8]
> >>        mono-sgen(mono_object_new_specific+0x80) [0x81677b0]
> >>        mono-sgen(mono_exception_from_name_domain+0x3e) [0x8205ede]
> >>        mono-sgen(mono_exception_from_name+0x28) [0x8205f78]
> >>        mono-sgen(mono_get_exception_null_reference+0x23) [0x8206213]
> >>        mono-sgen() [0x80e4733]
> >>        mono-sgen() [0x8128866]
> >>        [0x128fce]
> >>        [0x15242c]
> >>        [0x1522bc]
> >>        [0x151768]
> >>        [0x155eb8]
> >>        [0x154f3c]
> >>        [0x1522dc]
> >>        [0x151768]
> >>        [0x151848]
> >>        [0x1512fc]
> >>        [0x151150]
> >>        [0x14f0a8]
> >>        [0x14ebd0]
> >>        [0x1a10e4]
> >>        [0x159ca4]
> >>        [0x14a36c]
> >>        [0xf50244]
> >>        [0x1415bc]
> >>        [0x141270]
> >>        [0x128d6c]
> >>        [0x128f1e]
> >>        mono-sgen() [0x80621c8]
> >>        mono-sgen(mono_runtime_invoke+0x3e) [0x81671ee]
> >>        mono-sgen(mono_runtime_exec_main+0xd8) [0x8169a28]
> >>        mono-sgen(mono_main+0x1878) [0x80bcdb8]
> >>        mono-sgen() [0x805707e]
> >>        /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x3ade37]
> >>        mono-sgen() [0x8056ed1]
> >>
> >> Debug info from gdb:
> >>
> >> Could not attach to process.  If your uid matches the uid of the target
> >> process, check the setting of /proc/sys/kernel/yama/ptrace_scope, or try
> >> again as the root user.  For more details, see
> >> /etc/sysctl.d/10-ptrace.conf
> >> ptrace: Operation not permitted.
> >>
> >> =================================================================
> >> Got a SIGSEGV while executing native code. This usually indicates
> >> a fatal error in the mono runtime or one of the native libraries
> >> used by your application.
> >> =================================================================
> >>
> >> ./profile.sh: line 1: 25637 Aborted                 mono --gc=sgen
> >> --profile=log:heapshot rovisualizer.exe
> >>
> >>
> >>
> >> On Mon, Oct 31, 2011 at 10:34 AM, Rodrigo Kumpera <kumpera at gmail.com>
> >> wrote:
> >> > Please try a more current version of mono such as 2.10.7, there have
> >> > been
> >> > sgen related fixes since 2.10.2.
> >> >
> >> > On Mon, Oct 31, 2011 at 12:25 PM, Nicholas Frechette <
> zeno490 at gmail.com>
> >> > wrote:
> >> >>
> >> >> Hi,
> >> >> I'm attempting to track down a memory leak in my application.
> >> >> I managed to run heapshot a number of times as described in the wiki
> >> >> page but unfortunately, now my application fails to start every time
> >> >> with the profiler enabled.
> >> >>
> >> >> Running a debug build on ubuntu 11.04 + mono 2.10.2 produces:
> >> >> [mono-2.10] ~/projects/rovisualizer-dev/rovisualizer/bin/Debug @ mono
> >> >> --gc=sgen --profile=log:heapshot rovisualizer.exe
> >> >> Stacktrace:
> >> >>
> >> >>
> >> >> Native stacktrace:
> >> >>
> >> >>        mono-sgen() [0x80e30eb]
> >> >>        mono-sgen() [0x81293ab]
> >> >>        mono-sgen() [0x805d3c1]
> >> >>        [0x54840c]
> >> >>        mono-sgen() [0x8188d47]
> >> >>        mono-sgen(mono_object_new_alloc_specific+0x28) [0x8166bd8]
> >> >>        mono-sgen(mono_object_new_specific+0x80) [0x8166cd0]
> >> >>        mono-sgen(mono_exception_from_name_domain+0x3e) [0x8204dbe]
> >> >>        mono-sgen(mono_exception_from_name+0x28) [0x8204e58]
> >> >>        mono-sgen(mono_get_exception_null_reference+0x23) [0x82050f3]
> >> >>        mono-sgen() [0x80e3f03]
> >> >>        mono-sgen() [0x8127d86]
> >> >>        [0x8fafc6]
> >> >>        [0xda520c]
> >> >>        [0xda49fe]
> >> >>        [0xda3f2a]
> >> >>        [0xda911e]
> >> >>        [0xda774c]
> >> >>        [0xda4a1e]
> >> >>        [0xda3f2a]
> >> >>        [0xda400a]
> >> >>        [0xda3c74]
> >> >>        [0xda3ac8]
> >> >>        [0xda18aa]
> >> >>        [0xda1588]
> >> >>        [0x3820e4]
> >> >>        [0xdadd26]
> >> >>        [0xd9e36c]
> >> >>        [0x37d13c]
> >> >>        [0x36858c]
> >> >>        [0x368222]
> >> >>        [0x8fad6e]
> >> >>        [0x8faf1c]
> >> >>        mono-sgen() [0x8062158]
> >> >>        mono-sgen(mono_runtime_invoke+0x3e) [0x816670e]
> >> >>        mono-sgen(mono_runtime_exec_main+0xd8) [0x8168f48]
> >> >>        mono-sgen(mono_main+0x1878) [0x80bc9d8]
> >> >>        mono-sgen() [0x805707e]
> >> >>        /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xe7)
> [0x126e37]
> >> >>        mono-sgen() [0x8056ed1]
> >> >>
> >> >> Debug info from gdb:
> >> >>
> >> >> Could not attach to process.  If your uid matches the uid of the
> target
> >> >> process, check the setting of /proc/sys/kernel/yama/ptrace_scope, or
> >> >> try
> >> >> again as the root user.  For more details, see
> >> >> /etc/sysctl.d/10-ptrace.conf
> >> >> ptrace: Operation not permitted.
> >> >>
> >> >> =================================================================
> >> >> Got a SIGSEGV while executing native code. This usually indicates
> >> >> a fatal error in the mono runtime or one of the native libraries
> >> >> used by your application.
> >> >> =================================================================
> >> >>
> >> >> Aborted
> >> >>
> >> >>
> >> >> -------------------
> >> >> Any ideas?
> >> >> Thanks,
> >> >> Nicholas
> >> >> _______________________________________________
> >> >> Mono-list maillist  -  Mono-list at lists.ximian.com
> >> >> http://lists.ximian.com/mailman/listinfo/mono-list
> >> >
> >> >
> >
> >
> _______________________________________________
> Mono-list maillist  -  Mono-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-list/attachments/20111107/94f0881c/attachment-0001.html 


More information about the Mono-list mailing list