[mono] android crash: mono_get_image_for_generic_param [class.c : 2136]

Open
#113,202 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
20/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
android, csharp

Research direction

Start with src/mono/mono/metadata/class.c at line 2136 and trace the callers in src/mono/mono/metadata/metadata.c, especially collect_type_images and collect_method_images. Use the Android arm64 backtrace to investigate the generic-method metadata path; done means the reported SIGSEGV no longer occurs, with validation for this execution path.

Written by the indexing model from the issue text.

Description

area-VM-meta-mono os-android

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x9b4058b89b7e26

x0  b400007b05f38418  x1  798478cbe0  x2  ffffffffffffffe0  x3  200007a6c8ab120

x4  200007a6c8ab160  x5  4f796e6100000000  x6  80616e794f  x7  664f7865656f49

x8  b89b4058b89b7e26  x9  b8951b25  x10 f  x11 1

x12 0  x13 bfa8  x14 55a44210  x15 3b682000

x16 7ccab01f20  x17 7ccaa871c0  x18 fffffffffffffee8  x19 798478cbe0

x20 b400007a2601ea90  x21 7977a8a151  x22 b400007b68454788  x23 0

x24 b400007b68454790  x25 0  x26 b400007b67f7a6e0  x27 b400007b67f7a6c0

x28 2  x29 798478cb50  lr  7977c6b340  sp  798478cb50

pc  7977c1ed30  pst 80001000

backtrace:

#00 pc 0000000000207d30  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_get_image_for_generic_param [src/mono/mono/metadata/class.c : 2136 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#01 pc 000000000025433c  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (collect_type_images [src/mono/mono/metadata/metadata.c : 3135 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#02 pc 00000000002546e0 /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (collect_method_images [src/mono/mono/metadata/metadata.c : 3091 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#03 pc 0000000000254610  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_metadata_get_mem_manager_for_method [src/mono/mono/metadata/metadata.c : 3343 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#04 pc 000000000020632c  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_class_inflate_generic_method_full_checked [src/mono/mono/metadata/class.c : 1224 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#05 pc 0000000000207130  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_class_get_method_by_index [src/mono/mono/metadata/class.c : 1735 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#06 pc 0000000000241920 /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (find_method_in_class [src/mono/mono/metadata/loader.c : 506 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#07 pc 0000000000241524  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (find_method [src/mono/mono/metadata/loader.c : 548 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#08 pc 0000000000241328  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (method_from_memberref [src/mono/mono/metadata/loader.c : 0 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#09 pc 000000000023f6bc  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_get_method_checked [src/mono/mono/metadata/loader.c : 1198 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#10 pc 00000000000e6cc4 /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_method_to_ir [src/mono/mono/mini/method-to-ir.c : 7654 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#11 pc 00000000000cd1ac  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (inline_method [src/mono/mono/mini/method-to-ir.c : 4825 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#12 pc 00000000000e6c74  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_method_to_ir [src/mono/mono/mini/method-to-ir.c : 7873 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#13 pc 00000000000be0a8  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mini_method_compile [src/mono/mono/mini/mini.c : 3498 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#14 pc 00000000000c06e4  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZWPSbZB-NwnEKxFXzlA==/lib/arm64/libmonosgen-2.0.so (mono_jit_compile_method_inner [src/mono/mono/mini/mini.c : 4132 + 0x0]) (BuildId: 42c8b61931986227e9bad5b46aa5cb7748fd9c9b)

#15 pc 00000000000c53b0  /data/app/~~WboABV-XCST2Uk9Ue-FUpg==/com.xxx.yyy--4rZW
Dominant language
C#
Stars
18.3k
Forks
5.6k
PR merge metrics
PR metrics pending

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from dotnet/runtime

All issues in dotnet/runtime

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.