https://bugzilla.novell.com/show_bug.cgi?id=462016
User [email protected] added comment https://bugzilla.novell.com/show_bug.cgi?id=462016#c1 --- Comment #1 from Steven Munroe <[email protected]> 2008-12-23 10:33:38 MST --- Additoinal debug shows that in class.c:mono_class_init line 3611 the class->inteface_count has a bogus value of 1536 and ->name="". While the gklass->interface_count=0 and ->name="Tests". This looks a memory clobber. In gdb *class: (gdb) print *class $3 = {element_class = 0x20960080, cast_class = 0x6000009, supertypes = 0x102a20c8, idepth = 4143, rank = 3 '\003', instance_size = -135919937, inited = 0, init_pending = 1, size_inited = 0, valuetype = 0, enumtype = 0, blittable = 0, unicode = 0, wastypebuilder = 0, min_align = 3 '\003', packing_size = 15, ghcimpl = 1, has_finalize = 1, marshalbyref = 1, contextbound = 1, delegate = 1, gc_descr_inited = 1, has_cctor = 1, has_references = 1, has_static_refs = 1, no_special_static_fields = 1, is_com_object = 1, nested_classes_inited = 1, simd_type = 0, exception_type = 189 '�', parent = 0x1040006, nested_in = 0x20960080, nested_classes = 0x600000a, image = 0x102a20c8, name = 0x1033c6a0 "", name_space = 0xf7e606dc "mono_test_marshal_bool_byref", enum_basetype = 0x3ffff, declsec_flags = 264064832, type_token = 16777223, vtable_size = 546701440, interface_count = 1536, interface_id = 11, max_interface_id = 4138, interface_offsets_count = 8392, interfaces_packed = 0x1033c7d0, interface_offsets_packed = 0xf7e606fd, interface_bitmap = 0x3ffff <Address 0x3ffff out of bounds>, interfaces = 0xfbd4f60, sizes = {class_size = 16777224, element_size = 16777224, generic_param_token = 16777224}, flags = 546701440, field = {first = 0, count = 1}, method = {first = 0, count = 152}, property = {first = 262143, count = 264064864}, event = { first = 16777225, count = 546701440}, marshal_info = 0x600000d, fields = 0x102a20c8, properties = 0x1033c8d0, events = 0xf7e6076d, methods = 0x3ffff, this_arg = {data = {klass = 0xfbd4f80, type = 0xfbd4f80, array = 0xfbd4f80, method = 0xfbd4f80, generic_param = 0xfbd4f80, generic_class = 0xfbd4f80}, attrs = 256, type = MONO_TYPE_END, num_mods = 2, byref = 1, pinned = 0, modifiers = 0x102f6f88}, byval_arg = { data = {klass = 0x20960080, type = 0x20960080, array = 0x20960080, method = 0x20960080, generic_param = 0x20960080, generic_class = 0x20960080}, attrs = 1536, type = MONO_TYPE_END, num_mods = 3, byref = 1, pinned = 0, modifiers = 0x102f6f90}, generic_class = 0x102a20c8, generic_container = 0x1033cc30, reflection_info = 0xf7e607b2, gc_descr = 0x3ffff, runtime_info = 0xfbd4f80, next_class_cache = 0x100000b, vtable = 0x20960080, field_def_values = 0x600000f} (gdb) x/50 0x102f6ee8 0x102f6ee8: 0x20960080 0x06000009 0x102a20c8 0x102f03c8 0x102f6ef8: 0xf7e606bf 0x4003ffff 0x0fbd9790 0x01040006 0x102f6f08: 0x20960080 0x0600000a 0x102a20c8 0x1033c6a0 0x102f6f18: 0xf7e606dc 0x0003ffff 0x0fbd4f40 0x01000007 0x102f6f28: 0x20960080 0x0600000b 0x102a20c8 0x1033c7d0 0x102f6f38: 0xf7e606fd 0x0003ffff 0x0fbd4f60 0x01000008 0x102f6f48: 0x20960080 0x00000000 0x00000001 0x00000000 0x102f6f58: 0x00000098 0x0003ffff 0x0fbd4f60 0x01000009 0x102f6f68: 0x20960080 0x0600000d 0x102a20c8 0x1033c8d0 0x102f6f78: 0xf7e6076d 0x0003ffff 0x0fbd4f80 0x0100000a 0x102f6f88: 0x20960080 0x0600000e 0x102a20c8 0x1033cc30 0x102f6f98: 0xf7e607b2 0x0003ffff 0x0fbd4f80 0x0100000b 0x102f6fa8: 0x20960080 0x0600000f note the patern of 0x0003ffff and 0x0600000? the 0x0600 is the 1536 value from 0x102f6f2c the gklass struct seems to be in beter shape: (gdb) print *gklass $4 = {element_class = 0x102a20c8, cast_class = 0x102a20c8, supertypes = 0x102a2190, idepth = 2, rank = 0 '\0', instance_size = 12, inited = 1, init_pending = 0, size_inited = 1, valuetype = 0, enumtype = 0, blittable = 0, unicode = 0, wastypebuilder = 0, min_align = 4 '\004', packing_size = 0, ghcimpl = 0, has_finalize = 0, marshalbyref = 0, contextbound = 0, delegate = 0, gc_descr_inited = 1, has_cctor = 0, has_references = 0, has_static_refs = 0, no_special_static_fields = 0, is_com_object = 0, nested_classes_inited = 0, simd_type = 0, exception_type = 0 '\0', parent = 0x102a2b60, nested_in = 0x0, nested_classes = 0x0, image = 0x102a1b08, name = 0xf7e604a9 "Tests", name_space = 0xf7e60334 "", enum_basetype = 0x0, declsec_flags = 0, type_token = 33554434, vtable_size = 4, interface_count = 0, interface_id = 0, max_interface_id = 0, interface_offsets_count = 0, interfaces_packed = 0x102e2c90, interface_offsets_packed = 0x102e2c90, interface_bitmap = 0x102e2c90 "", interfaces = 0x0, sizes = {class_size = 0, element_size = 0, generic_param_token = 0}, flags = 1048577, field = { first = 0, count = 1}, method = {first = 0, count = 152}, property = { first = 0, count = 0}, event = {first = 0, count = 0}, marshal_info = 0x0, fields = 0x102e2c78, properties = 0x0, events = 0x0, methods = 0x102f6b88, this_arg = {data = {klass = 0x102a20c8, type = 0x102a20c8, array = 0x102a20c8, method = 0x102a20c8, generic_param = 0x102a20c8, generic_class = 0x102a20c8}, attrs = 0, type = MONO_TYPE_CLASS, num_mods = 0, byref = 1, pinned = 0, modifiers = 0x102a2168}, byval_arg = { data = {klass = 0x102a20c8, type = 0x102a20c8, array = 0x102a20c8, method = 0x102a20c8, generic_param = 0x102a20c8, generic_class = 0x102a20c8}, attrs = 0, type = MONO_TYPE_CLASS, num_mods = 0, byref = 0, pinned = 0, modifiers = 0x102a2170}, generic_class = 0x0, generic_container = 0x0, reflection_info = 0x0, gc_descr = 0x0, runtime_info = 0x102e2c98, next_class_cache = 0x0, vtable = 0x102b61e8, field_def_values = 0x0} (gdb) x/50 0x102a20c8 0x102a20c8: 0x102a20c8 0x102a20c8 0x102a2190 0x00020000 0x102a20d8: 0x0000000c 0xa0040040 0x00000000 0x102a2b60 0x102a20e8: 0x00000000 0x00000000 0x102a1b08 0xf7e604a9 0x102a20f8: 0xf7e60334 0x00000000 0x00000000 0x02000002 0x102a2108: 0x00000004 0x00000000 0x00000000 0x102e2c90 0x102a2118: 0x102e2c90 0x102e2c90 0x00000000 0x00000000 0x102a2128: 0x00100001 0x00000000 0x00000001 0x00000000 0x102a2138: 0x00000098 0x00000000 0x00000000 0x00000000 0x102a2148: 0x00000000 0x00000000 0x102e2c78 0x00000000 0x102a2158: 0x00000000 0x102f6b88 0x102a20c8 0x00001202 0x102a2168: 0x102a20c8 0x00001200 0x00000000 0x00000000 0x102a2178: 0x00000000 0x00000000 0x102e2c98 0x00000000 0x102a2188: 0x102b61e8 0x00000000 -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
