From ab884db8655a42440565edbb29c4920f7a0dc982 Mon Sep 17 00:00:00 2001 From: izzy2lost Date: Sun, 12 Apr 2026 14:49:00 -0400 Subject: [PATCH] Fixed crash on some devices --- android/app/src/main/cpp/CMakeLists.txt | 3 ++- android/app/src/main/cpp/config-host.h | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/cpp/CMakeLists.txt b/android/app/src/main/cpp/CMakeLists.txt index c23af65968..6965651297 100644 --- a/android/app/src/main/cpp/CMakeLists.txt +++ b/android/app/src/main/cpp/CMakeLists.txt @@ -535,7 +535,8 @@ list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "util[\\\\/]http\\.c$") list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "util[\\\\/]oslib-win32\\.c$") list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "util[\\\\/]qemu-thread-win32\\.c$") list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "util[\\\\/]s390x_pci_mmio\\.c$") -# sys_membarrier.c is now included (CONFIG_MEMBARRIER enabled) +list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "util[\\\\/]sys_membarrier\\.c$") +# Android app seccomp blocks membarrier, so keep the generic fallback path. list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "monitor[\\\\/]hmp-target\\.c$") list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "system[\\\\/]async-teardown\\.c$") list(FILTER XEMU_CORE_SOURCES EXCLUDE REGEX "system[\\\\/]device_tree\\.c$") diff --git a/android/app/src/main/cpp/config-host.h b/android/app/src/main/cpp/config-host.h index c55d377f2f..af1af74e66 100644 --- a/android/app/src/main/cpp/config-host.h +++ b/android/app/src/main/cpp/config-host.h @@ -25,7 +25,10 @@ #define CONFIG_TCG 1 #define CONFIG_SOFTMMU 1 -#define CONFIG_MEMBARRIER 1 +/* + * Android app seccomp policy blocks the membarrier syscall on arm64, so keep + * the QEMU fallback path enabled here instead of compiling in global barriers. + */ #define CONFIG_IOVEC 1