[Mono-bugs] [Bug 74192][Nor] Changed - remoting related crash inside the runtime

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Wed, 30 Mar 2005 10:51:38 -0500 (EST)


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by vargaz@gmail.com.

http://bugzilla.ximian.com/show_bug.cgi?id=74192

--- shadow/74192	2005-03-29 12:35:41.000000000 -0500
+++ shadow/74192.tmp.28980	2005-03-30 10:51:38.000000000 -0500
@@ -2,22 +2,21 @@
 Product: Mono: Runtime
 Version: 1.1
 OS: GNU/Linux [Other]
 OS Details: Gentoo kernel 2.6.10
 Status: NEW   
 Resolution: 
-Severity: 
+Severity: Unknown
 Priority: Normal
 Component: remoting
 AssignedTo: mono-bugs@ximian.com                            
 ReportedBy: AndrewArnott@byu.edu               
 QAContact: mono-bugs@ximian.com
 TargetMilestone: ---
 URL: 
-Cc: 
-Summary: Secondary AppDomain loaded assembly loses reference
+Summary: remoting related crash inside the runtime
 
 Description of Problem:
 A secondary AppDomain is created, an assembly is loaded into it, and an
 interface implementation is instantiated.  Then although the reference to
 the interface instance is still valid, a NullReferenceException is thrown
 when used.
@@ -97,6 +96,21 @@
 needed in Microsoft.NET.
 
 ------- Additional Comments From AndrewArnott@byu.edu  2005-03-29 12:35 -------
 Created an attachment (id=14778)
 run "make test" to compile and run test case
 
+
+------- Additional Comments From vargaz@gmail.com  2005-03-30 10:51 -------
+I debugged this, and the following seems to happen:
+
+- the crash is in the JIT when the JIT tries to compile the abstract
+method IPlugin:get_Name (). The call to the abstract method is made
+in an xdomain-dispatch wrapper, which is generated at marshal.c:2616
+in HEAD. Obviously abstract methods cannot be called with CALL.
+- That xdomain-dispatch wrapper is created indirectly by the code in
+mono_class_proxy_vtable. One interesting thing is that 
+remote_class->proxy_class is MarshalByRefObject there. 
+
+Lluis, could you look at this ?
+
+