With latest qemu several places where qemu-usermode is used e.g.
nodejs, qtwebengine, chromium, the builds are failing form armv8a
tuned machines (e.g. tegra) which is due to qemu crash ( SIGILL )
encoutered when 'max' ISA is used ( which is default ), max seems
to use neoverse-n2 equivalent features, which is evident that SIGILL
also happens when using -cpu neoverse-v2, therefore explicitly select
neoverse-v1 for ISA, which works and covers almost all (if not all)
cpu tunes for armv8 we have.

Signed-off-by: Khem Raj <[email protected]>
---
 meta/conf/machine/include/arm/arch-arm64.inc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/conf/machine/include/arm/arch-arm64.inc 
b/meta/conf/machine/include/arm/arch-arm64.inc
index 832d0000acb..9639911d33b 100644
--- a/meta/conf/machine/include/arm/arch-arm64.inc
+++ b/meta/conf/machine/include/arm/arch-arm64.inc
@@ -42,3 +42,8 @@ TARGET_FPU = "${@bb.utils.contains('TUNE_FEATURES', 
'aarch64', '${TARGET_FPU_64}
 # support these they're meaningless NOP instructions, so there's very little
 # reason not to.
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', ' 
-mbranch-protection=standard', '', d)}"
+
+# Fix qemu-user crashes while building nodejs/chromium/qtwebengine, defaults 
ISA is max and it generate SIGILLs
+# qemu: uncaught target signal 4 (Illegal instruction) - core dumped
+# Select the superset ISA
+QEMU_EXTRAOPTIONS_armv8a = "-cpu neoverse-v1"
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#201796): 
https://lists.openembedded.org/g/openembedded-core/message/201796
Mute This Topic: https://lists.openembedded.org/mt/107173682/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to