libretro / flycast

Flycast is a multiplatform Sega Dreamcast emulator. NOTE: No longer actively developed, use upstream repo for libretro from now on - https://github.com/flyinghead/flycast
http://reicast.com
GNU General Public License v2.0
155 stars 78 forks source link

Flycast crashing on startup with Vulkan, Android 9 #1020

Open foureight84 opened 3 years ago

foureight84 commented 3 years ago

Flycast crashes and forces Retroarch to close on game loading when using Vulkan video drivers. I've tried all 3 of Flycast's Alpha Sorting options to no avail. Game loads without issues using opengl drivers.

Phone: LG V40 ThinQ Chipset: Snapdragon 845 OS: Android 9, kernel 4.9.112, July 1 2020 security patch. (This is the latest build offered by Sprint) RetroArch: 1.9.0_GIT, Git Version: 6388872

Log:

RetroArch 1.9.0 (Git 6388872)
=== Build =======================================
Capabilities:  ASIMD
[INFO] Built: Aug 11 2020
[INFO] Version: 1.9.0
[INFO] Git: 6388872
[INFO] =================================================
[Environ]: SET_PIXEL_FORMAT: RGB565.
[Overrides]: Redirecting save file to "/storage/emulated/0/RetroArch/saves/.srm".
[Overrides]: Redirecting save state to "/storage/emulated/0/RetroArch/states/.state".
Version of libretro API: 1
[INFO] Compiled against API: 1
[Audio]: Set audio input rate to: 48000.00 Hz.
[Video]: Video @ 960x720
[Video]: Starting threaded video driver ...
[Vulkan]: Vulkan dynamic library loaded.
[Vulkan]: Found vulkan context: vk_android
[Vulkan]: Detecting screen resolution 0x0.
[Vulkan]: Setting swap interval: 1.
[Android]: Native window size: 1080 x 2273.
[Vulkan]: Created Android surface: 516717336256
[Vulkan]: Found GPU at index 0: Adreno (TM) 630
[Vulkan]: Using GPU index 0.
[Vulkan]: Using semaphores for WSI acquire.
[Vulkan]: Using GPU: Adreno (TM) 630
[Vulkan]: Queue family 0 supports 3 sub-queues.
[Vulkan]: Swapchain supports present mode: 1.
[Vulkan]: Swapchain supports present mode: 2.
[Vulkan]: Swapchain supports present mode: 1000111000.
[Vulkan]: Swapchain supports present mode: 1000111001.
[Vulkan]: Creating swapchain with present mode: 2
[Vulkan]: Using swapchain size 1080 x 2273.
[Vulkan]: Got 3 swapchain images.
[Vulkan]: Using resolution 1080x2273
[Vulkan]: Using RGB565 format.
[Vulkan]: Loading stock shader.
[slang]: Building pass #0 (N/A)
[Vulkan filter chain]: Not using frame history.
[Vulkan filter chain]: Not using framebuffer feedback.
[Joypad]: Found joypad driver: "android".
[Font]: Using font rendering backend: stb-unicode.
[Video]: Found display server: android
[OpenSL]: Requested audio latency: 128 ms.[OpenSL]: Setting audio latency: Block size = 1920, Blocks = 13, Total = 24960 ...
[Display]: Found display driver: "vulkan".
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Display]: Found display driver: "vulkan".
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[MIDI]: Input disabled.
[MIDI]: Output disabled.
[MIDI]: Initialized "null" driver.
Input device ID 5 is unknown to this libretro implementation. Using RETRO_DEVICE_JOYPAD.
Disconnecting device from port 6.
Disconnecting device from port 7.
Disconnecting device from port 8.
Disconnecting device from port 9.
Disconnecting device from port 10.
Disconnecting device from port 11.
Disconnecting device from port 12.
Disconnecting device from port 13.
Disconnecting device from port 14.
Disconnecting device from port 15.
Disconnecting device from port 16.
[SRAM]: SRAM will not be saved.
[Playlist]: Loading history file: [/data/user/0/com.retroarch.aarch64/content_history.lpl].
[Playlist]: Loading history file: [/data/user/0/com.retroarch.aarch64/content_music_history.lpl].
[Playlist]: Loading history file: [/data/user/0/com.retroarch.aarch64/content_image_history.lpl].
[Playlist]: Loading favorites file: [/data/user/0/com.retroarch.aarch64/content_favorites.lpl].
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Android]: Native window size: 1080 x 2273.
[Vulkan]: Swapchain supports present mode: 1.
[Vulkan]: Swapchain supports present mode: 2.
[Vulkan]: Swapchain supports present mode: 1000111000.
[Vulkan]: Swapchain supports present mode: 1000111001.
[Vulkan]: Creating swapchain with present mode: 2
[Vulkan]: Using swapchain size 1080 x 2273.
[Vulkan]: Got 3 swapchain images.
[Vulkan]: Destroying stale acquire semaphore.
[slang]: Building pass #0 (N/A)
[Vulkan filter chain]: Not using frame history.
[Vulkan filter chain]: Not using framebuffer feedback.
[Android]: Native window size: 1080 x 2273.
[Vulkan]: Do not need to re-create swapchain.
[slang]: Building pass #0 (N/A)
[Vulkan filter chain]: Not using frame history.
[Vulkan filter chain]: Not using framebuffer feedback.
ConfigurationChanged: 0x7855a7d940
Content rect changed: 2273 x 1080
[Android]: Resizing (1080 x 2273) -> (2273 x 1080).
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Android]: Native window size: 2273 x 1080.
[Vulkan]: Swapchain supports present mode: 1.
[Vulkan]: Swapchain supports present mode: 2.
[Vulkan]: Swapchain supports present mode: 1000111000.
[Vulkan]: Swapchain supports present mode: 1000111001.
[Vulkan]: Creating swapchain with present mode: 2
[Vulkan]: Using swapchain size 2273 x 1080.
[Vulkan]: Got 3 swapchain images.
[Vulkan]: Destroying stale acquire semaphore.
[slang]: Building pass #0 (N/A)
[Vulkan filter chain]: Not using frame history.
[Vulkan filter chain]: Not using framebuffer feedback.
[CORE]: Using content: /storage/9C33-6BBD/Games/DC/Cannon Spike (USA).chd.
Content ran for a total of: 00 hours, 00 minutes, 00 seconds.
[CORE]: Unloading core..
[CORE]: Unloading core symbols..
Threaded video stats: Frames pushed: 301, Frames dropped: 0.
RetroArch 1.9.0 (Git 6388872)
[Overrides]: Redirecting save file to "/storage/emulated/0/RetroArch/saves/Cannon Spike (USA).srm".
[Overrides]: Redirecting save state to "/storage/emulated/0/RetroArch/states/Cannon Spike (USA).state".
=== Build =======================================
Capabilities:  ASIMD
[INFO] Built: Aug 11 2020
[INFO] Version: 1.9.0
[INFO] Git: 6388872
[INFO] =================================================
jni_thread_destruct()
[CORE]: Loading dynamic libretro core from: "/data/user/0/com.retroarch.aarch64/cores/flycast_libretro_android.so"
[Overrides]: No core-specific overrides found at /storage/emulated/0/RetroArch/config/Flycast/Flycast.cfg.
[Overrides]: No content-dir-specific overrides found at /storage/emulated/0/RetroArch/config/Flycast/DC.cfg.
[Overrides]: No game-specific overrides found at /storage/emulated/0/RetroArch/config/Flycast/Cannon Spike (USA).cfg.
[Environ]: GET_CORE_OPTIONS_VERSION.
[Environ]: GET_LANGUAGE: "0".
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_INTL.
[Environ]: SET_CONTROLLER_INFO.
[Remaps]: remap directory: /storage/emulated/0/RetroArch/config/remaps
[Overrides]: Redirecting save file to "/storage/emulated/0/RetroArch/saves/Cannon Spike (USA).srm".
[Overrides]: Redirecting save state to "/storage/emulated/0/RetroArch/states/Cannon Spike (USA).state".
[Environ]: GET_LOG_INTERFACE.
[Environ]: GET_PERF_INTERFACE.
[Environ]: SET_PIXEL_FORMAT: XRGB8888.
[Environ]: SET_KEYBOARD_CALLBACK.
[Environ]: GET_DISK_CONTROL_INTERFACE_VERSION.
[Environ]: SET_DISK_CONTROL_EXT_INTERFACE.
[CONTENT LOAD]: Content loading skipped. Implementation will load it on its own.
[Environ]: GET_RUMBLE_INTERFACE.
[Environ]: SYSTEM_DIRECTORY: "/storage/9C33-6BBD/Games/_BIOS".
[Environ]: GET_SAVE_DIRECTORY.
[Environ]: SET_SAVE_STATE_IN_BACKGROUND: yes.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
File extension is: .chd
[Environ]: GET_PREFERRED_HW_RENDER.
[Environ]: SET_HW_RENDER.
Requesting Vulkan context.
[Environ]: SET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE.
00:00:192 hw/mem/_vmem.cpp:556 N[VMEM]: Info: nvmem is enabled, with addr space of size 4GB
00:00:249 nullDC.cpp:152 N[BOOT]: [LUT]: Product number: T1215N    .
00:00:250 hw/maple/maple_devs.cpp:599 W[MAPLE]: Failed to create VMU save file "/storage/9C33-6BBD/Games/_BIOS/dc/vmu_save_A1.bin"
00:00:250 hw/maple/maple_devs.cpp:599 W[MAPLE]: Failed to create VMU save file "/storage/9C33-6BBD/Games/_BIOS/dc/vmu_save_B1.bin"
00:00:251 hw/maple/maple_devs.cpp:599 W[MAPLE]: Failed to create VMU save file "/storage/9C33-6BBD/Games/_BIOS/dc/vmu_save_C1.bin"
00:00:251 hw/maple/maple_devs.cpp:599 W[MAPLE]: Failed to create VMU save file "/storage/9C33-6BBD/Games/_BIOS/dc/vmu_save_D1.bin"
[Environ]: SET_ROTATION: 0
[SRAM]: Skipping SRAM load..
Version of libretro API: 1
[INFO] Compiled against API: 1
[Cheats]: Load game-specific cheatfile: /storage/emulated/0/RetroArch/cheats/Flycast/Cannon Spike (USA).cht
[Audio]: Set audio input rate to: 44100.00 Hz.
[Video]: Video @ 3072x2304
[Video]: Using HW render, Vulkan driver forced.
[Vulkan]: Vulkan dynamic library loaded.
[Vulkan]: App: Flycast (version 1)
[Vulkan]: Engine: Flycast (version 1)
[Vulkan]: Found vulkan context: vk_android
[Vulkan]: Detecting screen resolution 0x0.
[Vulkan]: Setting swap interval: 1.
[Android]: Native window size: 2273 x 1080.
[Vulkan]: Created Android surface: 516643847264
[Vulkan]: Found GPU at index 0: Adreno (TM) 630
[Vulkan]: Using GPU index 0.
[Vulkan]: Using semaphores for WSI acquire.
[Vulkan]: Using GPU: Adreno (TM) 630
[Vulkan]: Swapchain supports present mode: 1.
[Vulkan]: Swapchain supports present mode: 2.
[Vulkan]: Swapchain supports present mode: 1000111000.
[Vulkan]: Swapchain supports present mode: 1000111001.
[Vulkan]: Creating swapchain with present mode: 2
[Vulkan]: Using swapchain size 2273 x 1080.
[Vulkan]: Got 3 swapchain images.
[Vulkan]: Using resolution 2273x1080
[Vulkan]: Using BGRA8888 format.
[Vulkan]: Loading stock shader.
[slang]: Building pass #0 (N/A)
[Vulkan filter chain]: Not using frame history.
[Vulkan filter chain]: Not using framebuffer feedback.
[Joypad]: Found joypad driver: "android".
[Font]: Using font rendering backend: stb-unicode.
[Video]: Found display server: android
00:00:436 rend/vulkan/vulkan_context.cpp:190 N[RENDERER]: GPU Supports Vulkan API: 1.1.66
00:00:437 rend/vulkan/vulkan_context.cpp:218 N[RENDERER]: eR5G5B5A1UnormPack16 not supported for optimal tiling
00:00:437 rend/vulkan/vulkan_context.cpp:232 N[RENDERER]: eR4G4B4A4UnormPack16 not supported for optimal tiling
barbudreadmon commented 3 years ago

which commit of flycast are you using ? your logs look weird

00:00:436 rend/vulkan/vulkan_context.cpp:190 N[RENDERER]: GPU Supports Vulkan API: 1.1.66

since it's 1.1.X, it should be followed by a line like this using latest version :

00:00:436 rend/vulkan/vulkan_context.cpp:190 N[RENDERER]: GPU Supports vkGetPhysicalDeviceProperties2

inactive123 commented 3 years ago

I can reproduce this with the Play Store build, but NOT with the regular nightly from the buildbot.

Flycast on buildbot is 8954f06 and on the play store it's 8954f06

RetroArch version on the buildbot is 9a44722 (https://github.com/libretro/RetroArch/commit/9a44722) RetroArch version on the Play Store is d3eb9b6 (https://github.com/libretro/RetroArch/commit/d3eb9b6)

It doesn't matter if the Play Store version is Plus or non-Plus. The crash will always happen in this way:

(with the original BIOS) Crash happens after the Dreamcast BIOS animation swirl at the start (with HLE BIOS) Crash happens a few frames into the game's startup screens

Device I am testing is a Samsung Galaxy S10 Plus. Android version is 10.

foureight84 commented 3 years ago

I can reproduce this with the Play Store build, but NOT with the regular nightly from the buildbot.

Flycast on buildbot is 8954f06 and on the play store it's 8954f06

RetroArch version on the buildbot is 9a44722 (libretro/RetroArch@9a44722) RetroArch version on the Play Store is d3eb9b6 (libretro/RetroArch@d3eb9b6)

It doesn't matter if the Play Store version is Plus or non-Plus. The crash will always happen in this way:

(with the original BIOS) Crash happens after the Dreamcast BIOS animation swirl at the start (with HLE BIOS) Crash happens a few frames into the game's startup screens

Device I am testing is a Samsung Galaxy S10 Plus. Android version is 10.

The build I'm using doesn't even load bios. I will switch to nightly. Thanks for the tip 👍

EDIT: Nightly build does not have issues with Vulkan renderer.

foureight84 commented 3 years ago

which commit of flycast are you using ? your logs look weird

00:00:436 rend/vulkan/vulkan_context.cpp:190 N[RENDERER]: GPU Supports Vulkan API: 1.1.66

since it's 1.1.X, it should be followed by a line like this using latest version :

00:00:436 rend/vulkan/vulkan_context.cpp:190 N[RENDERER]: GPU Supports vkGetPhysicalDeviceProperties2

This was downloaded from the Retroarch website. The 64bit apk.

barbudreadmon commented 3 years ago

reopening, we still need to figure out why the playstore build is crashing

foureight84 commented 3 years ago

reopening, we still need to figure out why the playstore build is crashing

Let me know if you need additional information

farmerbb commented 3 years ago

The root cause of the issue is RetroArch being compiled with targetSdkVersion 29. This is the case for the Play Store versions of the app, due to Google's stringent policies. The standalone APKs downloadable from the buildbot are compiled with targetSdkVersion 28, so until a proper fix for this issue is found, please use the standalone APK for now.

Note that this crash doesn't occur on every device. I've tested on the Pixel 4a, Pixelbook and Nvidia Shield and all three of those devices do not exhibit this issue. It also appears to not be Vulkan-specific as we have gotten it to crash on OpenGL as well.

foureight84 commented 3 years ago

I suspected that in my case (specific to the LG V40 Sprint), it was due to my attempt to debloat the phone. Since I no longer use the cellular service, I removed a lot of features installed on the phone. I did a factory reset today and installed the playstore version, standalone, and also tried the nightly build (both 64bit) and flycast launches with the Vulkan renderer without issues. I suspect this is also why @barbudreadmon mentioned that the log I posted looks funny.

I did not install the playstore build prior to this. It has always been the standalone builds. However, neither are showing issues after I've factory reset and restored apps and services I removed.

Here are the packages I removed from the phone previously. I can't tell which is the culprit but perhaps one of you guys would be able to see it right away.

pm uninstall --user 0 com.sprint.zone
pm uninstall --user 0 com.sprint.w.prefact
pm uninstall --user 0 com.sprint.w.installer
pm uninstall --user 0 com.sprint.psdg.sw
pm uninstall --user 0 com.sprint.ms.smf.services
pm uninstall --user 0 com.sprint.ms.cdm
pm uninstall --user 0 com.sprint.ecid
pm uninstall --user 0 com.sprint.ce.updater
pm uninstall --user 0 com.pinsight.dw
pm uninstall --user 0 com.lookout
pm uninstall --user 0 com.lge.vrplayer
pm uninstall --user 0 com.lge.video.vr.wallpaper
pm uninstall --user 0 com.lge.updatecenter
pm uninstall --user 0 com.lge.sprintserver
pm uninstall --user 0 com.lge.sprintnativewfc.smf
pm uninstall --user 0 com.lge.snappage
pm uninstall --user 0 com.lge.mlt
pm uninstall --user 0 com.lge.lifetracker
pm uninstall --user 0 com.lge.lgpay.qlauncher
pm uninstall --user 0 com.lge.lgfota.permission
pm uninstall --user 0 com.lge.lgdms.clientspr
pm uninstall --user 0 com.lge.lgdms.clients
pm uninstall --user 0 com.lge.gdec.client
pm uninstall --user 0 com.lge.gcuv
pm uninstall --user 0 com.lge.gametuner
pm uninstall --user 0 com.lge.gallery.vr.wallpaper
pm uninstall --user 0 com.lge.gallery.collagewallpaper
pm uninstall --user 0 com.lge.exchange
pm uninstall --user 0 com.lge.email
pm uninstall --user 0 com.lge.carfinding
pm uninstall --user 0 com.lge.appbox.client
pm uninstall --user 0 com.lge.animal.resource
pm uninstall --user 0 com.lge.android.atservice
pm uninstall --user 0 com.ironsource.appcloud.oobe
pm uninstall --user 0 com.google.ar.core
pm uninstall --user 0 com.google.android.youtube
pm uninstall --user 0 com.google.android.videos
pm uninstall --user 0 com.google.android.inservice.recommendation
pm uninstall --user 0 com.google.android.music
pm uninstall --user 0 com.google.android.inputmethod.latin
pm uninstall --user 0 com.google.android.apps.work.oobconfic
pm uninstall --user 0 com.google.android.apps.walletnfcrel
pm uninstall --user 0 com.google.android.apps.tachyon
pm uninstall --user 0 com.google.android.apps.photos
pm uninstall --user 0 com.google.android.apps.magazines
pm uninstall --user 0 com.google.android.apps.docs.editors.slides
pm uninstall --user 0 com.google.android.apps.docs.editors.sheets
pm uninstall --user 0 com.google.android.apps.docs.editors.docs
pm uninstall --user 0 com.google.android.apps.cloudprint
pm uninstall --user 0 com.facebook.system
pm uninstall --user 0 com.facebook.katana
pm uninstall --user 0 com.facebook.appmanager
pm uninstall --user 0 com.coremobility.app.vnotes
pm uninstall --user 0 com.android.printspooler
pm uninstall --user 0 com.android.bips
pm uninstall --user 0 com.amazon.avod.thirdpartyclient
pm uninstall --user 0 com.amazon.appmanager
pm uninstall --user 0 com.amazon.mShop.android.shopping
pm uninstall --user 0 com.sprint.ecid
pm uninstall --user 0 com.nextradioapp.nextradio
pm uninstall --user 0 com.lge.cmas
pm uninstall --user 0 com.google.ar.lens
pm uninstall --user 0 com.google.android.apps.maps
pm uninstall --user 0 com.google.android.googlequicksearchbox
pm uninstall --user 0 com.google.android.gm
pm uninstall --user 0 com.lge.qhelp.application
pm uninstall --user 0 com.lge.lgworld
pm uninstall --user 0 com.lge.qhelp
pm uninstall --user 0 com.lge.qmemoplus
pm uninstall --user 0 com.lge.icecontacts
pm uninstall --user 0 com.android.contacts
pm uninstall --user 0 com.google.android.syncadapters.contacts
pm uninstall --user 0 com.google.android.apps.messaging
pm uninstall --user 0 com.android.providers.telephony
pm uninstall --user 0 com.qualcomm.qti.telephonyservice
pm uninstall --user 0 com.android.server.telecom
pm uninstall --user 0 com.android.mms.service
pm uninstall --user 0 com.sprint.extension
pm uninstall --user 0 com.android.stk
pm uninstall --user 0 com.android.incallui
pm uninstall --user 0 com.qualcomm.qti.callenhancement
pm uninstall --user 0 com.android.calllogbackup
pm uninstall --user 0 com.qti.confuridialer
pm uninstall --user 0 com.android.emergency
pm uninstall --user 0 com.android.carrierdefaultapp
pm uninstall --user 0 com.lge.gestureanswering
pm uninstall --user 0 com.android.carrierconfig
pm uninstall --user 0 org.codeaurora.btmultisim
pm uninstall --user 0 com.lge.hotspotprovision
pm uninstall --user 0 com.lge.cic.eden.service
pm uninstall --user 0 com.lge.lteconfig
pm uninstall --user 0 com.android.phone
pm uninstall --user 0 com.lge.networksettings
pm uninstall --user 0 com.lge.briefing
pm uninstall --user 0 com.lge.upsell
pm uninstall --user 0 com.google.android.ims
pm uninstall --user 0 com.lge.wfcsettings
pm uninstall --user 0 com.lge.wfcservice
pm uninstall --user 0 com.lge.wfcprovider
pm uninstall --user 0 com.lge.wfcconnectivity
pm uninstall --user 0 com.lge.ims
pm uninstall --user 0 com.lge.ims.nodeprovider
pm uninstall --user 0 com.quicinc.cne.CNEService
pm uninstall --user 0 com.android.providers.blockednumber
pm uninstall --user 0 com.lge.cloudhub
pm uninstall --user 0 com.lge.lgdmfcm

echo "Removing Root Checkers"
pm uninstall --user 0 com.lge.srtc
pm uninstall --user 0 com.lge.rctprovider
barbudreadmon commented 3 years ago

so that's some kind of android setup issue, thanks for letting us know

Swordfish90 commented 3 years ago

I wanted to include flycast into Lemuroid and I stumbled upon this very issue. I was almost sure it was related to the ashmem changes in API 29 (https://developer.android.com/about/versions/10/behavior-changes-10#shared-memory), but even after using the new ashmem APIs, it's still crashing.

I'm able to reproduce it consistently and it looks like an issue with the dynamic recompiler:

art_sigsegv_fault 0x00000070ce193864 art::FaultManager::HandleFault(int, siginfo*, void*) 0x00000070ce193d68 ___lldb_unnamed_symbol24$$app_process64 0x00000056c1cc6ed0 <unknown> 0x000000715517e63c ::ngen_mainloop(void *) rec_arm64.cpp:79

This is on a Xiaomi 9T Pro, Android 10 using LibretroDroid with targetSdkVersion set to 29. Flycast runs through the OpenGL ES renderer with every option is set to default except "reicast_threaded_rendering" which is set to "disabled".

Sadly I'm not really knowledgeable when it comes to dynamic recompilers, but if you need help debugging it count me in.