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

(Android)(Vulkan) Texture Shader crash in SNK NEO games #14774

Closed
5 tasks done
ghost opened this issue Aug 29, 2021 · 22 comments · Fixed by #14805
Closed
5 tasks done

(Android)(Vulkan) Texture Shader crash in SNK NEO games #14774

ghost opened this issue Aug 29, 2021 · 22 comments · Fixed by #14805
Labels
Milestone

Comments

@ghost
Copy link

ghost commented Aug 29, 2021

Game or games this happens in

NPUH10119 - King Of Fighters '96

What area of the game / PPSSPP

Screenshot_2021-08-30-00-10-58-259_org ppsspp ppsspp
If I enable hw tesselation on KOF '96 the ppsspp emulator is crashing without blue screen showing up.

What should happen

Not cause crashing if hw tesselation is on 🤔

Logs

ppsspp_logcat_08-30-2021.txt

ppsspp settings

NPUH10119_ppsspp.ini.txt

Platform

Android

Mobile phone model or graphics card

Redmi Note 9 Android 11 Helio G85 Mali-G52 GPU

PPSSPP version affected

v1.11.3-1194

Last working version

None

Graphics backend (3D API)

Vulkan

Checklist

  • Test in the latest git build in case it's already fixed.
  • Search for other reports of the same issue.
  • Try resetting settings or older versions and include if the issue is related.
  • Try without any cheats and without loading any save states.
  • Include logs or screenshots of issue.
@hrydgard hrydgard added this to the v1.12.0 milestone Aug 29, 2021
@hrydgard
Copy link
Owner

Hardware tessellation is buggy enough that I'm considering just disabling it entirely, until it can be fixed...

@Saramagrean
Copy link
Contributor

KOF96-Crash

08-30 02:18:15.181  4291  4329 D DeviceStateHelper: Audio mode: 0
08-30 02:18:15.276 17695 17695 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-30 02:18:15.276 17695 17695 F DEBUG   : Build fingerprint: 'google/redfin/redfin:12/SPB4.210715.014/7654839:user/release-keys'
08-30 02:18:15.276 17695 17695 F DEBUG   : Revision: '0'
08-30 02:18:15.276 17695 17695 F DEBUG   : ABI: 'arm64'
08-30 02:18:15.276 17695 17695 F DEBUG   : Timestamp: 2021-08-30 02:18:14.208926748+0700
08-30 02:18:15.276 17695 17695 F DEBUG   : Process uptime: 111s
08-30 02:18:15.276 17695 17695 F DEBUG   : Cmdline: org.ppsspp.ppsspp
08-30 02:18:15.276 17695 17695 F DEBUG   : pid: 17174, tid: 17503, name: Emu  >>> org.ppsspp.ppsspp <<<
08-30 02:18:15.276 17695 17695 F DEBUG   : uid: 10239
08-30 02:18:15.276 17695 17695 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x28
08-30 02:18:15.276 17695 17695 F DEBUG   : Cause: null pointer dereference
08-30 02:18:15.277 17695 17695 F DEBUG   :     x0  0000000000000000  x1  0000007db71587cc  x2  0000007b5733f210  x3  0000007aa1fc22b8
08-30 02:18:15.277 17695 17695 F DEBUG   :     x4  0000000000000030  x5  0000000000000000  x6  1f63686b60756d48  x7  7f7f7f7f7f7f7f7f
08-30 02:18:15.277 17695 17695 F DEBUG   :     x8  ee0767bedbead2da  x9  ee0767bedbead2da  x10 0000007b57082000  x11 0000000000000040
08-30 02:18:15.277 17695 17695 F DEBUG   :     x12 0000000000000007  x13 000000000000003f  x14 0000007aa1fc0390  x15 0000000000000000
08-30 02:18:15.277 17695 17695 F DEBUG   :     x16 0000007ab011e2d0  x17 0000007db70bdb40  x18 0000007aafedaa64  x19 0000007aa1fc2498
08-30 02:18:15.277 17695 17695 F DEBUG   :     x20 b400007be70bde70  x21 b400007be70bdf10  x22 000000000000019f  x23 0000000000000000
08-30 02:18:15.277 17695 17695 F DEBUG   :     x24 0000000000000000  x25 0000007aa1fc3000  x26 0000007aa1fc3000  x27 b400007d2717c1d0
08-30 02:18:15.277 17695 17695 F DEBUG   :     x28 0000007ab0159a10  x29 0000007aa1fc23f0
08-30 02:18:15.277 17695 17695 F DEBUG   :     lr  0000007aaf650e90  sp  0000007aa1fc2380  pc  0000007aaf650e90  pst 0000000060000000
08-30 02:18:15.277 17695 17695 F DEBUG   : backtrace:
08-30 02:18:15.277 17695 17695 F DEBUG   :       #00 pc 000000000058fe90  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (ShaderManagerGLES::ApplyVertexShader(bool, bool, unsigned int, bool, VShaderID*)+232) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #01 pc 0000000000598388  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (DrawEngineGLES::DoFlush()+352) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #02 pc 00000000005d0f2c  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (void DrawEngineCommon::SubmitCurve<Spline::BezierSurface>(void const*, void const*, Spline::BezierSurface&, unsigned int, int*, char const*)+76) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #03 pc 000000000060af4c  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (GPUCommon::Execute_Bezier(unsigned int, unsigned int)+844) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #04 pc 000000000060eaf4  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (GPUCommon::FastRunLoop(DisplayList&)+92) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #05 pc 000000000060e6c0  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (GPUCommon::InterpretList(DisplayList&)+580) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #06 pc 000000000060dc24  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (GPUCommon::ProcessDLQueue()+112) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.277 17695 17695 F DEBUG   :       #07 pc 000000000060da6c  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (GPUCommon::EnqueueList(unsigned int, unsigned int, int, PSPPointer<PspGeListArgs>, bool)+1400) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.278 17695 17695 F DEBUG   :       #08 pc 000000000046b98c  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (void WrapU_UUIU<&(sceGeListEnQueue(unsigned int, unsigned int, int, unsigned int))>()+60) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.278 17695 17695 F DEBUG   :       #09 pc 00000000004471cc  /data/app/~~OpWfL8e5zWpDozl9y93FMg==/org.ppsspp.ppsspp-QBOQgelOeygPySp92YH-sw==/lib/arm64/libppsspp_jni.so (CallSyscallWithoutFlags(HLEFunction const*)+28) (BuildId: d6e1e36beac67cb7090a19e28f5b49768d3c3057)
08-30 02:18:15.278 17695 17695 F DEBUG   :       #10 pc 000000000000c474  <anonymous:7a8d70d000>
08-30 02:18:15.317   615   615 E tombstoned: Tombstone written to: tombstone_00

hrydgard added a commit that referenced this issue Aug 29, 2021
Suspect that this is happening with the HW tesselation crash in KOF '96.

Should help #14774
@ghost
Copy link

ghost commented Aug 30, 2021

Not only King of Fighters '96 are affected all neo geo station games.

The complete list:
•Fatal Fury
•Alpha Mission II
•The King of Fighters '94
•Samurai Shodown
•Baseball Stars Professional
•Magician Lord
•Metal Slug
•League Bowling
•Super Sidekicks
•Art of Fighting
•Shock Troopers

@ghost
Copy link
Author

ghost commented Aug 30, 2021

Still crashing if I enable hw tessellation using ppsspp latest git build.

@ghost ghost changed the title (Android)(Vulkan)(HW Tesselation) KOF '96 Crashing Out The Emulator (Android)(VK)(HW Tessellation) SNK NEO GEO Station Games Crashing Out The Emulator. Aug 30, 2021
@unknownbrackets
Copy link
Collaborator

Hm, the error message in the log implies that it's hitting one of:

  • Invalid flags - tess requires normal
  • Tess not supported on this shader language version

Only the former should be possible in Vulkan.

The crash log above shows GLES - it might've been fixed by #14777, but can you try adb logcat -c and get the trace for the Vulkan error?

We actually seem to reuse that bit:

// These are the original vertType's values (normalized will always have colors, etc.)
id.SetBit(VS_BIT_HAS_NORMAL_TESS, (gstate.vertType & GE_VTYPE_NRM_MASK) != 0 || gstate.isLightingEnabled());

So perhaps we should really be setting hasNormal = true; always for bezier/spline?

-[Unknown]

@ghost
Copy link
Author

ghost commented Aug 30, 2021

<<< log_count = 42 >>>
[08-29 22:07:10.641 22171:22171 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-29 22:07:10.871 22171:22171 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-29 22:07:10.871 22171:22171 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:04:36.262 16486:16486 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:04:36.399 16486:16486 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:04:36.399 16486:16486 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:04:55.895 16622:16622 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:04:55.983 16622:16622 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:04:55.983 16622:16622 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:05:25.331 16736:16736 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:05:25.435 16736:16736 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:05:25.435 16736:16736 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:07:28.667 16955:16955 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:07:28.746 16955:16955 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:07:28.746 16955:16955 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:08:08.361 17104:17104 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:08:08.440 17104:17104 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:08:08.440 17104:17104 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:09:22.559 17265:17265 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:09:22.695 17265:17265 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:09:22.695 17265:17265 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:09:56.509 17451:17451 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:09:56.614 17451:17451 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:09:56.614 17451:17451 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:24:00.202 24323:24323 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 00:24:00.513 24323:24323 F/DEBUG]
      #05 pc 00000000005a6e64  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 00:24:00.513 24323:24323 F/DEBUG]
      #06 pc 000000000059e220  /data/app/~~T6as34E0DSS4pskDfRiOHw==/org.ppsspp.ppsspp-5c3se8sf4SIBpOyhTrErnA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: 6002bf481fba24122f7c9473364cb96fa7a04afe)

[08-30 07:18:01.713 7439:7439 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 07:18:01.991 7439:7439 F/DEBUG]
      #05 pc 00000000005a8664  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: dc8507f3e3c8dacb797d86fb19f8dcdcff8c6c62)

[08-30 07:18:01.991 7439:7439 F/DEBUG]
      #06 pc 000000000059fa20  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: dc8507f3e3c8dacb797d86fb19f8dcdcff8c6c62)

[08-30 09:40:11.120 18296:18296 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 09:40:11.352 18296:18296 F/DEBUG]
      #05 pc 00000000005a8664  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: dc8507f3e3c8dacb797d86fb19f8dcdcff8c6c62)

[08-30 09:40:11.352 18296:18296 F/DEBUG]
      #06 pc 000000000059fa20  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: dc8507f3e3c8dacb797d86fb19f8dcdcff8c6c62)

[08-30 09:42:13.117 18563:19955 D/vulkan]
searching for layers in '/data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64'

[08-30 09:42:13.117 18563:19955 D/vulkan]
searching for layers in '/data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/base.apk!/lib/arm64-v8a'

[08-30 09:42:49.126 18563:20006 F/PPSSPP]
(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***

[08-30 09:42:49.249 18563:20006 F/g.ppsspp.ppssp]
runtime.cc:655] Runtime aborting...
runtime.cc:655] Dumping all threads without mutator lock held
runtime.cc:655] All threads:
runtime.cc:655] DALVIK THREADS (72):
runtime.cc:655] "Thread-36" prio=5 tid=17 Runnable
runtime.cc:655]   | group="" sCount=0 dsCount=0 flags=0 obj=0x12e03278 self=0xb400007e97301000
runtime.cc:655]   | sysTid=20006 nice=0 cgrp=default sched=0/0 handle=0x7e74a0dcc0
runtime.cc:655]   | state=R schedstat=( 8248441953 153352561 6871 ) utm=740 stm=84 core=7 HZ=100
runtime.cc:655]   | stack=0x7e7490a000-0x7e7490c000 stackSize=1043KB
runtime.cc:655]   | held mutexes= "abort lock" "mutator lock"(shared held)
runtime.cc:655]   native: #00 pc 00000000004a6d84  /apex/com.android.art/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+140)
runtime.cc:655]   native: #01 pc 00000000005b5a1c  /apex/com.android.art/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const+372)
runtime.cc:655]   native: #02 pc 00000000005d2fbc  /apex/com.android.art/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+924)
runtime.cc:655]   native: #03 pc 00000000005cce2c  /apex/com.android.art/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+532)
runtime.cc:655]   native: #04 pc 00000000005cbfac  /apex/com.android.art/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool)+1876)
runtime.cc:655]   native: #05 pc 0000000000565d94  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+1876)
runtime.cc:655]   native: #06 pc 0000000000013ab0  /system/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+80)
runtime.cc:655]   native: #07 pc 0000000000006ec8  /system/lib64/liblog.so (__android_log_assert+336)
runtime.cc:655]   native: #08 pc 00000000006b5bb0  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (HandleAssert(char const*, char const*, int, char const*, char const*, ...)+248)
runtime.cc:655]   native: #09 pc 00000000005a8664  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392)
runtime.cc:655]   native: #10 pc 000000000059fa20  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668)
runtime.cc:655]   native: #11 pc 00000000005d07d8  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (void DrawEngineCommon::SubmitCurve<Spline::BezierSurface>(void const*, void const*, Spline::BezierSurface&, unsigned int, int*, char const*)+76)
runtime.cc:655]   native: #12 pc 000000000060a7f8  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (GPUCommon::Execute_Bezier(unsigned int, unsigned int)+844)
runtime.cc:655]   native: #13 pc 000000000060e3a0  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (GPUCommon::FastRunLoop(DisplayList&)+92)
runtime.cc:655]   native: #14 pc 000000000060df6c  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (GPUCommon::InterpretList(DisplayList&)+580)
runtime.cc:655]   native: #15 pc 000000000060d4d0  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (GPUCommon::ProcessDLQueue()+112)

[08-30 09:42:49.249 18563:20006 F/g.ppsspp.ppssp]
runtime.cc:655]   | sysTid=20169 nice=-1 cgrp=default sched=-1/-1 handle=0x7e5c149cc0
runtime.cc:655]   | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
runtime.cc:655]   | stack=0x7e5c052000-0x7e5c054000 stackSize=995KB
runtime.cc:655]   | held mutexes=
runtime.cc:655]   native: (backtrace::Unwind failed for thread 20169: Thread doesn't exist)
runtime.cc:655]   (no managed stack frames)
runtime.cc:655] 
runtime.cc:655] "Thread-57" prio=5 tid=71 Native
runtime.cc:655]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12e80000 self=0xb400007e771dcc00
runtime.cc:655]   | sysTid=20170 nice=-1 cgrp=default sched=-1/-1 handle=0x7e5c149cc0
runtime.cc:655]   | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
runtime.cc:655]   | stack=0x7e5c052000-0x7e5c054000 stackSize=995KB
runtime.cc:655]   | held mutexes=
runtime.cc:655]   native: (backtrace::Unwind failed for thread 20170: Thread doesn't exist)
runtime.cc:655]   (no managed stack frames)
runtime.cc:655] 
runtime.cc:655] "Thread-58" prio=5 tid=72 Native
runtime.cc:655]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12ec0000 self=0xb400007e771f5c00
runtime.cc:655]   | sysTid=20171 nice=-1 cgrp=default sched=-1/-1 handle=0x7e5c149cc0
runtime.cc:655]   | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
runtime.cc:655]   | stack=0x7e5c052000-0x7e5c054000 stackSize=995KB
runtime.cc:655]   | held mutexes=
runtime.cc:655]   native: (backtrace::Unwind failed for thread 20171: Thread doesn't exist)
runtime.cc:655]   (no managed stack frames)
runtime.cc:655] 
runtime.cc:655] Aborting thread:
runtime.cc:655] "Thread-36" prio=5 tid=17 Native
runtime.cc:655]   | group="" sCount=0 dsCount=0 flags=0 obj=0x12e03278 self=0xb400007e97301000
runtime.cc:655]   | sysTid=20006 nice=0 cgrp=default sched=0/0 handle=0x7e74a0dcc0
runtime.cc:655]   | state=R schedstat=( 8328750801 153404175 6939 ) utm=746 stm=86 core=6 HZ=100
runtime.cc:655]   | stack=0x7e7490a000-0x7e7490c000 stackSize=1043KB
runtime.cc:655]   | held mutexes= "abort lock"
runtime.cc:655]   native: #00 pc 00000000004a6d84  /apex/com.android.art/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+140)
runtime.cc:655]   native: #01 pc 00000000005b5a1c  /apex/com.android.art/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const+372)
runtime.cc:655]   native: #02 pc 000000000057a97c  /apex/com.android.art/lib64/libart.so (art::AbortState::DumpThread(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, art::Thread*) const+60)
runtime.cc:655]   native: #03 pc 0000000000565fd0  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+2448)
runtime.cc:655]   native: #04 pc 0000000000013ab0  /system/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+80)
runtime.cc:655]   native: #05 pc 0000000000006ec8  /system/lib64/liblog.so (__android_log_assert+336)
runtime.cc:655]   native: #06 pc 00000000006b5bb0  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (HandleAssert(char const*, char const*, int, char const*, char const*, ...)+248)
runtime.cc:655]   native: #07 pc 00000000005a8664  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392)
runtime.cc:655]   native: #08 pc 000000000059fa20  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668)

[08-30 09:42:49.249 18563:20006 F/g.ppsspp.ppssp]
runtime.cc:663] (ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
runtime.cc:663] 

[08-30 09:42:49.399 20174:20174 F/DEBUG]
Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
'

[08-30 09:42:49.582 20174:20174 F/DEBUG]
      #05 pc 00000000005a8664  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: dc8507f3e3c8dacb797d86fb19f8dcdcff8c6c62)

[08-30 09:42:49.582 20174:20174 F/DEBUG]
      #06 pc 000000000059fa20  /data/app/~~tdKSBvb-fI61nlZaM3gMPQ==/org.ppsspp.ppsspp-MWrZX2HAQgBapBzfDhpsuw==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: dc8507f3e3c8dacb797d86fb19f8dcdcff8c6c62)

@ghost
Copy link
Author

ghost commented Aug 30, 2021

The logs above is capture only via logcat reader app I don't have a pc to try the adb logcat -c sorry 😐

@unknownbrackets
Copy link
Collaborator

Thanks, that does help. So it's definitely coming from SubmitCurve, not sure if +76 could indicate the first flush, though.

But I guess it's probably because it's comparing against the game's vert type, not the vertType for submission...

-[Unknown]

@Saramagrean
Copy link
Contributor

here log after adb logcat -c

08-30 11:29:26.310  2382 18421 D qc_adm  : ns 2576448 > expected_ns 2000000 (skipped 12281)
08-30 11:29:27.186 16750 16750 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-30 11:29:27.186 16750 16750 F DEBUG   : Build fingerprint: 'google/redfin/redfin:12/SPB4.210715.014/7654839:user/release-keys'
08-30 11:29:27.186 16750 16750 F DEBUG   : Revision: '0'
08-30 11:29:27.186 16750 16750 F DEBUG   : ABI: 'arm64'
08-30 11:29:27.186 16750 16750 F DEBUG   : Timestamp: 2021-08-30 11:29:26.307052001+0700
08-30 11:29:27.186 16750 16750 F DEBUG   : Process uptime: 111s
08-30 11:29:27.186 16750 16750 F DEBUG   : Cmdline: org.ppsspp.ppsspp
08-30 11:29:27.186 16750 16750 F DEBUG   : pid: 15014, tid: 16326, name: Thread-57  >>> org.ppsspp.ppsspp <<<
08-30 11:29:27.186 16750 16750 F DEBUG   : uid: 10239
08-30 11:29:27.186 16750 16750 F DEBUG   : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
08-30 11:29:27.186 16750 16750 F DEBUG   : Abort message: '(ShaderManagerVulkan.cpp:GetShaders:269) Critical: [success] *** Assertion ***
08-30 11:29:27.186 16750 16750 F DEBUG   : '
08-30 11:29:27.186 16750 16750 F DEBUG   :     x0  0000000000000000  x1  0000000000003fc6  x2  0000000000000006  x3  00000073aae886c0
08-30 11:29:27.186 16750 16750 F DEBUG   :     x4  7455716466606d60  x5  7455716466606d60  x6  7455716466606d60  x7  7f7f7f7f7f7f7f7f
08-30 11:29:27.186 16750 16750 F DEBUG   :     x8  00000000000000f0  x9  67af5c83a8b74c46  x10 0000000000000000  x11 ffffff80fffffbdf
08-30 11:29:27.186 16750 16750 F DEBUG   :     x12 0000000000000001  x13 0000000000000070  x14 00000073aae874d0  x15 0000000000000000
08-30 11:29:27.186 16750 16750 F DEBUG   :     x16 00000076dfac3050  x17 00000076dfa9ff80  x18 00000073b84b5ce4  x19 0000000000003aa6
08-30 11:29:27.186 16750 16750 F DEBUG   :     x20 0000000000003fc6  x21 00000000ffffffff  x22 0000000000000019  x23 00000073aae896b0
08-30 11:29:27.186 16750 16750 F DEBUG   :     x24 b4000075579fd768  x25 00000073aae8b000  x26 0000007435e17000  x27 00000073aae8b000
08-30 11:29:27.186 16750 16750 F DEBUG   :     x28 0000000000000000  x29 00000073aae88740
08-30 11:29:27.186 16750 16750 F DEBUG   :     lr  00000076dfa52c3c  sp  00000073aae886a0  pc  00000076dfa52c68  pst 0000000000000000
08-30 11:29:27.186 16750 16750 F DEBUG   : backtrace:
08-30 11:29:27.186 16750 16750 F DEBUG   :       #00 pc 000000000004fc68  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 16a146efb5b048d744b674e300d5bcaf)
08-30 11:29:27.186 16750 16750 F DEBUG   :       #01 pc 00000000006eaf7c  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+660) (BuildId: 50c25b4aa1972771dac15f87d726a606)
08-30 11:29:27.186 16750 16750 F DEBUG   :       #02 pc 000000000001595c  /apex/com.android.art/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+76) (BuildId: 225cc3496ad7ce1867ed9bd3357de134)
08-30 11:29:27.186 16750 16750 F DEBUG   :       #03 pc 0000000000006dc8  /system/lib64/liblog.so (__android_log_assert+308) (BuildId: c9ff8e786b88d6738dc7e6abd0a6fc35)
08-30 11:29:27.186 16750 16750 F DEBUG   :       #04 pc 00000000006b5bb0  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (HandleAssert(char const*, char const*, int, char const*, char const*, ...)+248) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.186 16750 16750 F DEBUG   :       #05 pc 00000000005a8664  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (ShaderManagerVulkan::GetShaders(int, unsigned int, VulkanVertexShader**, VulkanFragmentShader**, bool, bool, bool)+392) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #06 pc 000000000059fa20  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (DrawEngineVulkan::DoFlush()+5668) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #07 pc 00000000005d07d8  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (void DrawEngineCommon::SubmitCurve<Spline::BezierSurface>(void const*, void const*, Spline::BezierSurface&, unsigned int, int*, char const*)+76) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #08 pc 000000000060a7f8  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (GPUCommon::Execute_Bezier(unsigned int, unsigned int)+844) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #09 pc 000000000060e3a0  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (GPUCommon::FastRunLoop(DisplayList&)+92) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #10 pc 000000000060df6c  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (GPUCommon::InterpretList(DisplayList&)+580) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #11 pc 000000000060d4d0  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (GPUCommon::ProcessDLQueue()+112) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #12 pc 000000000060d318  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (GPUCommon::EnqueueList(unsigned int, unsigned int, int, PSPPointer<PspGeListArgs>, bool)+1400) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #13 pc 000000000046f234  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (void WrapU_UUIU<&(sceGeListEnQueue(unsigned int, unsigned int, int, unsigned int))>()+60) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #14 pc 000000000044da74  /data/app/~~2dnlpfGl6izZUhXU7kXNFQ==/org.ppsspp.ppsspp-OMOG2hebnZFJUytfTb83gA==/lib/arm64/libppsspp_jni.so (CallSyscallWithoutFlags(HLEFunction const*)+28) (BuildId: f455baad601f82c6db743063844d256e46ea889d)
08-30 11:29:27.187 16750 16750 F DEBUG   :       #15 pc 000000000000c474  <anonymous:73966a9000>
08-30 11:29:27.219   618   618 E tombstoned: Tombstone written to: tombstone_05

@hrydgard
Copy link
Owner

hrydgard commented Aug 30, 2021

Almost certainly the same as in GL, only in Vulkan we don't allow software fallback vertex shaders, and thus we have an assert there if we fail to generate a vertex shader.

		bool success = GenerateVertexShader(VSID, codeBuffer_, compat_, draw_->GetBugs(), &attributeMask, &uniformMask, &genErrorString);
		_assert_(success);

So there's some condition here that causes GenerateVertexShader to return null, and given the other information above, it's almost certainly "Invalid flags - tess requires normal". Unknown's idea for a fix is likely on the right track.

@hrydgard
Copy link
Owner

Hm, the hw tess path seems to use the normal channel weirdly?

			if (hasTexcoordTess)
				WRITE(p, "  tess.tex = tess_sample(_tex, basis);\n");
			else
				WRITE(p, "  tess.tex = normal.xy;\n");

Anyway, I think the answer is in SubmitCurve and its call to NormalizeVertices. It should probably insert default normals to keep the rest of the pipeline happy.

Likely the use of tesselation is just some accident or old test code anyway in these games, unless they are as silly as puzzle bobble and actually uses it to draw plain quads...

@ghost
Copy link
Author

ghost commented Aug 30, 2021

Just OT is HW Tessellation only available on VK and not on OGL android?
IMG_20210830_163114

@unknownbrackets
Copy link
Collaborator

Just OT is HW Tessellation only available on VK and not on OGL android?

Hm, it should be checking features and enabling depending on them, maybe there's a wrong check.

-[Unknown]

@ghost
Copy link
Author

ghost commented Sep 8, 2021

Just OT is HW Tessellation only available on VK and not on OGL android?

Hm, it should be checking features and enabling depending on them, maybe there's a wrong check.

-[Unknown]

Thanks for reply!
I think my OGL backend is not supported hw tessellation, because it has no GL_EXT_draw_instanced?
#9455 (comment)
Screenshot_2021-09-08-09-53-07-432_org ppsspp ppsspp

@ghost
Copy link
Author

ghost commented Feb 2, 2023

I don't know why this game is crashing again with HW Tesselation + Texture Shaders, I'm using ppsspp 13b3a54 on my vivo y11.

@ghost
Copy link
Author

ghost commented Feb 2, 2023

d7ec252d7b460a539cf3a520c06bb8)
02-03 06:16:46.899 13063 13063 F DEBUG   :       #01 pc 0000000000532740  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+2340) (BuildId: 4534ad9d35933bca04188bd2fdebf03e)
02-03 06:16:46.899 13063 13063 F DEBUG   :       #02 pc 000000000001394c  /system/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+76) (BuildId: 41dc65e18251cf85250c40a648c62883)
02-03 06:16:46.899 13063 13063 F DEBUG   :       #03 pc 0000000000006d10  /system/lib64/liblog.so (__android_log_assert+336) (BuildId: 1a1e6eee07b1994bf23f1ee5f38f0e18)
02-03 06:16:46.899 13063 13063 F DEBUG   :       #04 pc 000000000078a5d4  /data/app/~~eFmIzdosGdTv80tlUT0vyQ==/org.ppsspp.ppsspp-stAykmwgVnhg1Q7dASH7xw==/lib/arm64/libppsspp_jni.so (HandleAssert(char const*, char const*, int, char const*, char const*, ...)+324) (BuildId: c5ec90ae2a4d2fa2f3dfc14a1be64c5548d6872e)
02-03 06:16:46.900 13063 13063 F DEBUG   :       #05 pc 0000000000773378  /data/app/~~eFmIzdosGdTv80tlUT0vyQ==/org.ppsspp.ppsspp-stAykmwgVnhg1Q7dASH7xw==/lib/arm64/libppsspp_jni.so (FrameData::SubmitPending(VulkanContext*, FrameSubmitType, FrameDataShared&)+540) (BuildId: c5ec90ae2a4d2fa2f3dfc14a1be64c5548d6872e)
02-03 06:16:46.900 13063 13063 F DEBUG   :       #06 pc 0000000000767060  /data/app/~~eFmIzdosGdTv80tlUT0vyQ==/org.ppsspp.ppsspp-stAykmwgVnhg1Q7dASH7xw==/lib/arm64/libppsspp_jni.so (VulkanRenderManager::Run(VKRRenderThreadTask&)+80) (BuildId: c5ec90ae2a4d2fa2f3dfc14a1be64c5548d6872e)
02-03 06:16:46.900 13063 13063 F DEBUG   :       #07 pc 0000000000765d20  /data/app/~~eFmIzdosGdTv80tlUT0vyQ==/org.ppsspp.ppsspp-stAykmwgVnhg1Q7dASH7xw==/lib/arm64/libppsspp_jni.so (VulkanRenderManager::ThreadFunc()+320) (BuildId: c5ec90ae2a4d2fa2f3dfc14a1be64c5548d6872e)
02-03 06:16:46.900 13063 13063 F DEBUG   :       #08 pc 000000000076a784  /data/app/~~eFmIzdosGdTv80tlUT0vyQ==/org.ppsspp.ppsspp-stAykmwgVnhg1Q7dASH7xw==/lib/arm64/libppsspp_jni.so (void* std::__ndk1::__thread_proxy<std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, void (VulkanRenderManager::*)(), VulkanRenderManager*> >(void*)+64) (BuildId: c5ec90ae2a4d2fa2f3dfc14a1be64c5548d6872e)

@hrydgard hrydgard reopened this Feb 3, 2023
@hrydgard hrydgard modified the milestones: v1.12.0, v1.15.0 Feb 3, 2023
@ghost
Copy link
Author

ghost commented Feb 3, 2023

GE Dump:
NPUH10119.zip

This crash since v1.14

@ghost
Copy link
Author

ghost commented Feb 4, 2023

I discovered that HW Tesselation does nothing to do about the crash.

The crash can only reproduce if Texture Shader is use.

I will change the title.

@ghost ghost changed the title (Android)(VK)(HW Tessellation) SNK NEO GEO Station Games Crashing Out The Emulator. (Android)(Vulkan) Texure Shader can cause crash if use in SNK NEO games. Feb 4, 2023
@hrydgard
Copy link
Owner

hrydgard commented Feb 4, 2023

That makes more sense, I think. I'll look into it.

@hrydgard hrydgard changed the title (Android)(Vulkan) Texure Shader can cause crash if use in SNK NEO games. (Android)(Vulkan) Texture Shader crash in SNK NEO games Feb 4, 2023
@ghost
Copy link
Author

ghost commented Mar 18, 2023

Want to add a new logs

PPSSPP  : (VulkanFrameData.cpp:SubmitPending:209): [false] (NPUH10119 THE KING OF FIGHTERS '96) Lost the Vulkan device in vkQueueSubmit! If this happens again, switch Graphics Backend away from Vulkan
03-18 23:34:21.320 12255 12255 F DEBUG   : Softversion: PD1930CF_EX_A_6.8.55
03-18 23:34:21.320 12255 12255 F DEBUG   : Time: 2023-03-18 23:34:21
03-18 23:34:21.320 12255 12255 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
03-18 23:34:21.320 12255 12255 F DEBUG   : Build fingerprint: 'vivo/1906/1906:11/RP1A.200720.012/compiler0316164337:user/release-keys'
03-18 23:34:21.320 12255 12255 F DEBUG   : Revision: '0'
03-18 23:34:21.320 12255 12255 F DEBUG   : ABI: 'arm64'
03-18 23:34:21.320 12255 12255 F DEBUG   : Timestamp: 2023-03-18 23:34:21+0800
03-18 23:34:21.320 12255 12255 F DEBUG   : pid: 12039, tid: 12141, name: RenderMan  >>> org.ppsspp.ppsspp <<<
03-18 23:34:21.320 12255 12255 F DEBUG   : uid: 10235
03-18 23:34:21.320 12255 12255 F DEBUG   : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
03-18 23:34:21.320 12255 12255 F DEBUG   : Abort message: '(VulkanFrameData.cpp:SubmitPending:209): [false] (NPUH10119 THE KING OF FIGHTERS '96) Lost the Vulkan device in vkQueueSubmit! If this happens again, switch Graphics Backend away from Vulkan'
03-18 23:34:21.320 12255 12255 F DEBUG   :     x0  0000000000000000  x1  0000000000002f6d  x2  0000000000000006  x3  0000006faf9f2100
03-18 23:34:21.320 12255 12255 F DEBUG   :     x4  00000070bb580000  x5  00000070bb580000  x6  00000070bb580000  x7  00000000000c04c6
03-18 23:34:21.320 12255 12255 F DEBUG   :     x8  00000000000000f0  x9  62bd8ac102a56b29  x10 0000000000000000  x11 ffffffc0fffffbdf
03-18 23:34:21.320 12255 12255 F DEBUG   :     x12 0000000000000001  x13 000000006415d9fd  x14 0008c3047504de00  x15 00005ea931ea0f93
03-18 23:34:21.320 12255 12255 F DEBUG   :     x16 00000070b77ca948  x17 00000070b77a7750  x18 0000006fa2236000  x19 0000000000002f07
03-18 23:34:21.320 12255 12255 F DEBUG   :     x20 0000000000002f6d  x21 00000000ffffffff  x22 0000006fc5bcbdaa  x23 0000006faf9f30f0
03-18 23:34:21.320 12255 12255 F DEBUG   :     x24 0000006fc486ea00  x25 0000006faf9f4000  x26 00000070336f786c  x27 0000007033df0000
03-18 23:34:21.320 12255 12255 F DEBUG   :     x28 0000007033df1000  x29 0000006faf9f2180
03-18 23:34:21.320 12255 12255 F DEBUG   :     lr  00000070b7756d24  sp  0000006faf9f20e0  pc  00000070b7756d50  pst 0000000000000000
03-18 23:34:21.336 12255 12255 F DEBUG   : backtrace:
03-18 23:34:21.336 12255 12255 F DEBUG   :       #00 pc 000000000008cd50  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: b1d7ec252d7b460a539cf3a520c06bb8)
03-18 23:34:21.336 12255 12255 F DEBUG   :       #01 pc 0000000000532740  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+2340) (BuildId: 4534ad9d35933bca04188bd2fdebf03e)
03-18 23:34:21.336 12255 12255 F DEBUG   :       #02 pc 000000000001394c  /system/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+76) (BuildId: 41dc65e18251cf85250c40a648c62883)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #03 pc 0000000000006d10  /system/lib64/liblog.so (__android_log_assert+336) (BuildId: 1a1e6eee07b1994bf23f1ee5f38f0e18)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #04 pc 000000000079e0b0  /data/app/~~pt-CmTAo8rHccjwrxo-dag==/org.ppsspp.ppsspp-nlZKz1X8gnOxhfJCsh11zA==/lib/arm64/libppsspp_jni.so (HandleAssert(char const*, char const*, int, char const*, char const*, ...)+324) (BuildId: 8fde1d299b985d1b574576ad08ea0af5260418df)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #05 pc 00000000007867c8  /data/app/~~pt-CmTAo8rHccjwrxo-dag==/org.ppsspp.ppsspp-nlZKz1X8gnOxhfJCsh11zA==/lib/arm64/libppsspp_jni.so (FrameData::SubmitPending(VulkanContext*, FrameSubmitType, FrameDataShared&)+592) (BuildId: 8fde1d299b985d1b574576ad08ea0af5260418df)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #06 pc 0000000000780de4  /data/app/~~pt-CmTAo8rHccjwrxo-dag==/org.ppsspp.ppsspp-nlZKz1X8gnOxhfJCsh11zA==/lib/arm64/libppsspp_jni.so (VulkanQueueRunner::RunSteps(std::__ndk1::vector<VKRStep*, std::__ndk1::allocator<VKRStep*> >&, FrameData&, FrameDataShared&, bool)+396) (BuildId: 8fde1d299b985d1b574576ad08ea0af5260418df)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #07 pc 000000000077a05c  /data/app/~~pt-CmTAo8rHccjwrxo-dag==/org.ppsspp.ppsspp-nlZKz1X8gnOxhfJCsh11zA==/lib/arm64/libppsspp_jni.so (VulkanRenderManager::Run(VKRRenderThreadTask&)+412) (BuildId: 8fde1d299b985d1b574576ad08ea0af5260418df)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #08 pc 0000000000778e38  /data/app/~~pt-CmTAo8rHccjwrxo-dag==/org.ppsspp.ppsspp-nlZKz1X8gnOxhfJCsh11zA==/lib/arm64/libppsspp_jni.so (VulkanRenderManager::ThreadFunc()+320) (BuildId: 8fde1d299b985d1b574576ad08ea0af5260418df)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #09 pc 000000000077d8e0  /data/app/~~pt-CmTAo8rHccjwrxo-dag==/org.ppsspp.ppsspp-nlZKz1X8gnOxhfJCsh11zA==/lib/arm64/libppsspp_jni.so (void* std::__ndk1::__thread_proxy<std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, void (VulkanRenderManager::*)(), VulkanRenderManager*> >(void*)+64) (BuildId: 8fde1d299b985d1b574576ad08ea0af5260418df)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #10 pc 00000000000f4510  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64) (BuildId: b1d7ec252d7b460a539cf3a520c06bb8)
03-18 23:34:21.337 12255 12255 F DEBUG   :       #11 pc 000000000008ef34  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: b1d7ec252d7b460a539cf3a520c06bb8)

hrydgard added a commit that referenced this issue Apr 1, 2023
Validation caught some weirdness here.

Might possibly help #14774 ?
@hrydgard
Copy link
Owner

hrydgard commented Apr 1, 2023

Would be interesting to test this again after #17219 is merged.

@hrydgard
Copy link
Owner

hrydgard commented Apr 2, 2023

I've tested with the GE dump on the few Mali phones I have that support Vulkan, with no issues. I'm gonna close, please re-open if you still see this with detailed information about what device and PPSSPP version.

@hrydgard hrydgard closed this as completed Apr 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants