[Mono-list] SIGSEGV Error with MarshalByRefObject implementing a generic interface

lytico lytico at users.sourceforge.net
Fri Jan 8 15:23:20 EST 2010


i get a sigsegv error if i call a property that is an implementation of a
generic interface on top of a MarshalByRefObject, something like:

	public class MyClass2<T> {
		public T Data { get; set; }
	}

	public interface IMyClass<T> {
		MyClass2<T> Data { get; set; }
	}

	public class MyClass<T> : MarshalByRefObject, IMyClass<T>	{
		public MyClass2<T> Data { get; set; }

		public void Call1 () {
			var data = new MyClass2<T> ();
			this.Data = data;
		}
	}


Sample Code:
http://old.nabble.com/file/p27081784/GenericInterfaceOnMarshalByRefObjectError.cs
GenericInterfaceOnMarshalByRefObjectError.cs 



Stacktrace:

  at Limaki.Tests.MonoGenericError2.DisplayDevice`1.Error2 () <0xffffffff>
  at Limaki.Tests.MonoGenericError2.DisplayDevice`1.Error2 () <0x00044>
  at (wrapper remoting-invoke-with-check)
Limaki.Tests.MonoGenericError2.DisplayDevice`1.Error2 () <0xffffffff>
  at Limaki.Tests.MonoGenericError2.GenericErrorTest.Test2 () <0x00034>
  at Limaki.Tests.MonoGenericError2.GenericErrorTest.Main (string[])
<0x00020>
  at (wrapper runtime-invoke)
Limaki.Tests.MonoGenericError2.GenericErrorTest.runtime_invoke_void_object
(object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

	mono [0x80c8824]
	mono [0x80f4693]
	[0x170410]
	mono [0x80d2453]
	[0xd58066]
	[0x15754c]
	[0x157455]
	[0x1572a9]
	[0x157203]
	mono(mono_runtime_exec_main+0xde) [0x81112ae]
	mono(mono_runtime_run_main+0x15a) [0x81134da]
	mono(mono_main+0x1aad) [0x80b19bd]
	mono [0x805aba5]
	/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6) [0x344b56]
	mono [0x805aae1]

Debug info from gdb:

[Thread debugging using libthread_db enabled]
[New Thread 0xa3ab70 (LWP 3114)]
[New Thread 0x4f7b70 (LWP 3113)]
0x00170422 in __kernel_vsyscall ()
  3 Thread 0x4f7b70 (LWP 3113)  0x00170422 in __kernel_vsyscall ()
  2 Thread 0xa3ab70 (LWP 3114)  0x00170422 in __kernel_vsyscall ()
* 1 Thread 0xecc6f0 (LWP 3112)  0x00170422 in __kernel_vsyscall ()

Thread 3 (Thread 0x4f7b70 (LWP 3113)):
#0  0x00170422 in __kernel_vsyscall ()
#1  0x00e6b466 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
#2  0x081a3658 in ?? ()
#3  0x00e6380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#4  0x003fa7ee in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 2 (Thread 0xa3ab70 (LWP 3114)):
#0  0x00170422 in __kernel_vsyscall ()
#1  0x00e69f75 in sem_wait@@GLIBC_2.1 () from
/lib/tls/i686/cmov/libpthread.so.0
#2  0x0812bb29 in ?? ()
#3  0x0814f96c in ?? ()
#4  0x081bf9f2 in ?? ()
#5  0x081de055 in ?? ()
#6  0x00e6380e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#7  0x003fa7ee in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 1 (Thread 0xecc6f0 (LWP 3112)):
#0  0x00170422 in __kernel_vsyscall ()
#1  0x00e6ac8b in read () from /lib/tls/i686/cmov/libpthread.so.0
#2  0x080c89be in ?? ()
#3  0x080f4693 in ?? ()
#4  <signal handler called>
#5  0x080d2453 in ?? ()
#6  0x00d58066 in ?? ()
#7  0x0015754c in ?? ()
#8  0x00157455 in ?? ()
#9  0x001572a9 in ?? ()
#10 0x00157203 in ?? ()
#11 0x081112ae in mono_runtime_exec_main ()
#12 0x081134da in mono_runtime_run_main ()
#13 0x080b19bd in mono_main ()
#14 0x0805aba5 in ?? ()
#15 0x00344b56 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#16 0x0805aae1 in ?? ()

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

-- 
View this message in context: http://old.nabble.com/SIGSEGV-Error-with-MarshalByRefObject-implementing-a-generic-interface-tp27081784p27081784.html
Sent from the Mono - General mailing list archive at Nabble.com.



More information about the Mono-list mailing list