[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

[native] update p/invoke tables for libSystem.Native.so - #10330

Merged
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329
Jul 24, 2025
Merged

[native] update p/invoke tables for libSystem.Native.so#10330
jonathanpeppers merged 1 commit into
mainfrom
dev/peppers/fix-10329

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Fixes: #10329
Context: dotnet/runtime#116639

Some SystemNative_ methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.

@filipnavarafilipnavara left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and it fixed the error on our app.

jonathanpeppers added a commit that referenced this pull request Jul 23, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
@jonathanpeppers
jonathanpeppers merged commit 26aefff into mainJul 24, 2025
59 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/peppers/fix-10329 branch July 24, 2025 01:36
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Fixes: #10329
Context: dotnet/runtime#116639
Some `SystemNative_` methods were removed/changed
in .NET 10 Preview 6. We should update our tables.
jonathanpeppers added a commit that referenced this pull request Jul 24, 2025
Context: #10330
The problem fixed in #10330 makes me think we are missing a test.
And indeed, this crashed on CoreCLR!
07-23 22:46:43.058 7510 7535 I NUnit : DirectoryTest
07-23 22:46:43.058 7510 7535 I NUnit : GetFiles 07-23 22:46:43.061 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_Stat")
07-23 22:46:43.062 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.070 7510 7534 I droid.NET_Test: Explicit concurrent copying GC freed 45(32KB) AllocSpace objects, 0(0B) LOS objects, 57% free, 1148KB/2684KB, paused 1.838ms total 7.423ms
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_OpenDir")
07-23 22:46:43.072 7510 7535 D monodroid: [precompiled] p/invoke found
07-23 22:46:43.072 7510 7535 D monodroid-assembly: [precompiled] clr_pinvoke_override ("libSystem.Native", "SystemNative_ReadDir")
07-23 22:46:43.072 7510 7535 D monodroid-assembly: Symbol 'SystemNative_ReadDir' in library 'libSystem.Native' not found in the generated tables, falling back to slow path
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Missing pinvoke SystemNative_ReadDir@libSystem.Native
07-23 22:46:43.072 7510 7535 F monodroid-assembly: Abort at precompiled.cc:88:3 ('static void *xamarin::android::PinvokeOverride::monodroid_pinvoke_override(const char *, const char *)')
--------- beginning of crash
07-23 22:46:43.073 7510 7535 F libc : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 7535 (Instrumentation), pid 7510 (droid.NET_Tests)
07-23 22:46:43.094 7550 7550 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-23 22:46:43.095 1870 1870 I /system/bin/tombstoned: received crash request for pid 7535
07-23 22:46:43.096 7550 7550 I crash_dump64: performing dump of process 7510 (target tid = 7535)
07-23 22:46:43.099 7550 7550 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-23 22:46:43.099 7550 7550 F DEBUG : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:10/QSR1.210820.001/7663313:userdebug/test-keys'
07-23 22:46:43.099 7550 7550 F DEBUG : Revision: '0'
07-23 22:46:43.099 7550 7550 F DEBUG : ABI: 'x86_64'
07-23 22:46:43.100 7550 7550 F DEBUG : Timestamp: 2025-07-23 22:46:43+0000
07-23 22:46:43.100 7550 7550 F DEBUG : pid: 7510, tid: 7535, name: Instrumentation >>> Mono.Android.NET_Tests <<<
07-23 22:46:43.100 7550 7550 F DEBUG : uid: 10119
07-23 22:46:43.100 7550 7550 F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
07-23 22:46:43.100 7550 7550 F DEBUG : Abort message: 'Missing pinvoke SystemNative_ReadDir@libSystem.Native'
07-23 22:46:43.100 7550 7550 F DEBUG : rax 0000000000000000 rbx 0000000000001d56 rcx 000078b597d263f8 rdx 0000000000000006
07-23 22:46:43.100 7550 7550 F DEBUG : r8 000078b50724aa40 r9 0000000000000000 r10 000078b4b9e158d0 r11 0000000000000246
07-23 22:46:43.100 7550 7550 F DEBUG : r12 000078b507358b00 r13 000078b4b9e159c0 r14 000078b4b9e15958 r15 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rdi 0000000000001d56 rsi 0000000000001d6f
07-23 22:46:43.100 7550 7550 F DEBUG : rbp 000078b4b9e15a70 rsp 000078b4b9e158c8 rip 000078b597d263f8
07-23 22:46:43.263 7550 7550 F DEBUG : 07-23 22:46:43.263 7550 7550 F DEBUG : backtrace:
07-23 22:46:43.263 7550 7550 F DEBUG : #00 pc 00000000000943f8 /apex/com.android.runtime/lib64/bionic/libc.so (syscall+24) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #1 pc 0000000000097146 /apex/com.android.runtime/lib64/bionic/libc.so (abort+182) (BuildId: b5c6019a3b4ea61b5e9a2f56319b584e)
07-23 22:46:43.263 7550 7550 F DEBUG : #2 pc 00000000000c41c9 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Helpers::abort_application(_LogCategories, char const*, bool, std::__ndk1::source_location)+425) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.263 7550 7550 F DEBUG : #3 pc 00000000000cee85 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::PinvokeOverride::monodroid_pinvoke_override(char const*, char const*)+8725) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #4 pc 00000000000cf191 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk!libnet-android.release.so (offset 0x1850000) (xamarin::android::Host::clr_pinvoke_override(char const*, char const*)+225) (BuildId: f25730a1c837257e71f58c776b710328f9824f26)
07-23 22:46:43.264 7550 7550 F DEBUG : #5 pc 00000000003f21f6 /data/app/Mono.Android.NET_Tests-3-1TDlT55wuyU7WHXRhzQQ==/split_config.x86_64.apk
With the fix in place in #10330, it passes.
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Aug 23, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P/Invoke override tables seem to be out of date

2 participants

@jonathanpeppers@filipnavara