Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Godot 3.2.2 gdnative regression #38250

Closed
m4gr3d opened this issue Apr 27, 2020 · 6 comments
Closed

Godot 3.2.2 gdnative regression #38250

m4gr3d opened this issue Apr 27, 2020 · 6 comments

Comments

@m4gr3d
Copy link
Contributor

m4gr3d commented Apr 27, 2020

Godot version:
3.2.2 HEAD

OS/device including version:
Android

Issue description:
Seems there's a gdnative regression at HEAD. After updating, the godot-cpp library crash at runtime with the following stacktrace:

Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 20910 (GLThread 30764), pid 20840 (e.gastvideodemo)
2020-04-26 21:52:11.443 20942-20942/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2020-04-26 21:52:11.443 20942-20942/? A/DEBUG: Build fingerprint: 'google/taimen/taimen:10/QQ2A.200405.005/6254899:userdebug/dev-keys'
2020-04-26 21:52:11.443 20942-20942/? A/DEBUG: Revision: 'rev_10'
2020-04-26 21:52:11.443 20942-20942/? A/DEBUG: ABI: 'arm64'
2020-04-26 21:52:11.443 20942-20942/? A/DEBUG: Timestamp: 2020-04-27 00:52:11-0400
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG: pid: 20840, tid: 20910, name: GLThread 30764  >>> org.godotengine.gastvideodemo <<<
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG: uid: 10199
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG: signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG: Abort message: 'stack corruption detected (-fstack-protector)'
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x0  0000000000000000  x1  00000000000051ae  x2  0000000000000006  x3  0000007e84f42800
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x4  0000000000000000  x5  0000000000000000  x6  0000000000000000  x7  0000000000000030
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x8  00000000000000f0  x9  0000007f74e8d4e0  x10 0000000000000000  x11 0000000000000001
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x12 0000000000000028  x13 0000000000000018  x14 00001be349bc5045  x15 00166a7509fe54a1
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x16 0000007f74f598c0  x17 0000007f74f37020  x18 0000007e83f36000  x19 00000000000000ac
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x20 0000000000005168  x21 00000000000000b2  x22 00000000000051ae  x23 00000000ffffffff
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x24 000000000000000c  x25 0000007e84f44020  x26 0000007ee2461cb0  x27 0000000000000003
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     x28 0000007e84f42c50  x29 0000007e84f428b0
2020-04-26 21:52:11.444 20942-20942/? A/DEBUG:     sp  0000007e84f427e0  lr  0000007f74eeb170  pc  0000007f74eeb1a0
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG: backtrace:
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #00 pc 00000000000821a0  /apex/com.android.runtime/lib64/bionic/libc.so (abort+176) (BuildId: 99d256d401014e290f38edaacced78da)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #01 pc 00000000000cd444  /apex/com.android.runtime/lib64/bionic/libc.so (__stack_chk_fail+20) (BuildId: 99d256d401014e290f38edaacced78da)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #02 pc 0000000000128978  /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/lib/arm64/libgast.so (godot::Ref<godot::Texture>::Ref(godot::Variant const&)+272) (BuildId: 1e3c3e5e6baba3c1a94d3d2761b3ff19d6f28d58)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #03 pc 00000000001284ec  /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/lib/arm64/libgast.so (gast::GastManager::get_external_texture(godot::Ref<godot::Mesh>, int)+344) (BuildId: 1e3c3e5e6baba3c1a94d3d2761b3ff19d6f28d58)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #04 pc 0000000000127ff4  /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/lib/arm64/libgast.so (gast::GastManager::get_external_texture(godot::String const&, int)+288) (BuildId: 1e3c3e5e6baba3c1a94d3d2761b3ff19d6f28d58)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #05 pc 0000000000127e88  /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/lib/arm64/libgast.so (gast::GastManager::get_external_texture_id(godot::String const&, int)+44) (BuildId: 1e3c3e5e6baba3c1a94d3d2761b3ff19d6f28d58)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #06 pc 000000000012ecc4  /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/lib/arm64/libgast.so (Java_com_google_vr_youtube_gast_GastManager_getExternalTextureId+96) (BuildId: 1e3c3e5e6baba3c1a94d3d2761b3ff19d6f28d58)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #07 pc 000000000013f350  /apex/com.android.runtime/lib64/libart.so (art_quick_generic_jni_trampoline+144) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #08 pc 0000000000136334  /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #09 pc 00000000001450ac  /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+244) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #10 pc 00000000002e2660  /apex/com.android.runtime/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+384) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.550 20942-20942/? A/DEBUG:       #11 pc 00000000002dd6ec  /apex/com.android.runtime/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+900) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #12 pc 00000000005a0420  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtual+648) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #13 pc 0000000000130814  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #14 pc 00000000001de6fe  [anon:dalvik-classes.dex extracted in memory from /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/base.apk] (com.google.vr.youtube.gast.GastManager.getExternalTextureId$default+10)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #15 pc 00000000005a32c0  /apex/com.android.runtime/lib64/libart.so (MterpInvokeStatic+1136) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #16 pc 0000000000130994  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_static+20) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #17 pc 00000000001df06e  [anon:dalvik-classes.dex extracted in memory from /data/app/org.godotengine.gastvideodemo-Tb2oquYJycEILKqdcqH1sQ==/base.apk] (com.google.vr.youtube.gast.video.GastVideoPlugin$setVideoNodePath$1.run+126)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #18 pc 00000000005a1f1c  /apex/com.android.runtime/lib64/libart.so (MterpInvokeInterface+1740) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #19 pc 0000000000130a14  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_interface+20) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #20 pc 00000000002d2fe2  /system/framework/framework.jar (android.opengl.GLSurfaceView$GLThread.guardedRun+670)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #21 pc 00000000005a2ab8  /apex/com.android.runtime/lib64/libart.so (MterpInvokeDirect+1168) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #22 pc 0000000000130914  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_direct+20) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #23 pc 00000000002d377c  /system/framework/framework.jar (android.opengl.GLSurfaceView$GLThread.run+48)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #24 pc 00000000002b2f90  /apex/com.android.runtime/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEbb.llvm.2123148157278992182+240) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #25 pc 0000000000591900  /apex/com.android.runtime/lib64/libart.so (artQuickToInterpreterBridge+1024) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #26 pc 000000000013f468  /apex/com.android.runtime/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #27 pc 0000000000136334  /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #28 pc 00000000001450ac  /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+244) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #29 pc 00000000004b0948  /apex/com.android.runtime/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #30 pc 00000000004b19f8  /apex/com.android.runtime/lib64/libart.so (art::InvokeVirtualOrInterfaceWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue const*)+416) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #31 pc 00000000004f1f40  /apex/com.android.runtime/lib64/libart.so (art::Thread::CreateCallback(void*)+1176) (BuildId: 00ee5ee02b27a5e6112b357c62486fe8)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #32 pc 00000000000e230c  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36) (BuildId: 99d256d401014e290f38edaacced78da)
2020-04-26 21:52:11.551 20942-20942/? A/DEBUG:       #33 pc 0000000000083d98  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 99d256d401014e290f38edaacced78da)

Reverting the 3.2 branch to ed27b7e seems to resolve the issue.

Steps to reproduce:
I'm only targeting Android devices, so I've only been able to reproduce the issue there.

@m4gr3d
Copy link
Contributor Author

m4gr3d commented Apr 27, 2020

cc @BastiaanOlij @RandomShaper

@akien-mga akien-mga added this to the 3.2 milestone Apr 27, 2020
@akien-mga
Copy link
Member

#38119 is the most likely culprit.

@RandomShaper
Copy link
Member

@m4gr3d, did that happen on a debug build of the engine? Can you check on a release build?

@RandomShaper
Copy link
Member

@m4gr3d, could you give #38257 a try?

@m4gr3d
Copy link
Contributor Author

m4gr3d commented Apr 27, 2020

@RandomShaper #38257 does fix the issue!

@akien-mga
Copy link
Member

Fixed by #38257.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants