diff options
Diffstat (limited to 'gitlab/issues/target_arm/host_missing/accel_TCG/1812.toml')
| -rw-r--r-- | gitlab/issues/target_arm/host_missing/accel_TCG/1812.toml | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gitlab/issues/target_arm/host_missing/accel_TCG/1812.toml b/gitlab/issues/target_arm/host_missing/accel_TCG/1812.toml new file mode 100644 index 00000000..437ad5e8 --- /dev/null +++ b/gitlab/issues/target_arm/host_missing/accel_TCG/1812.toml @@ -0,0 +1,33 @@ +id = 1812 +title = "older programs running under qemu-aarch64 segfaults" +state = "closed" +created_at = "2023-08-05T16:07:48.879Z" +closed_at = "2023-08-11T06:02:34.362Z" +labels = ["Closed::Fixed", "accel: TCG", "linux-user", "target: arm"] +url = "https://gitlab.com/qemu-project/qemu/-/issues/1812" +host-os = "Linux" +host-arch = "amd64" +qemu-version = "8.1.0-rc2" +guest-os = "Debian Jessie, Ubuntu Xenial, ..." +guest-arch = "aarch64" +description = """Numerous aarch64 programs segfaults when run under qemu-aarch64.""" +reproduce = """1. Install an arm64 chroot (with working qemu-aarch64 binfmt_misc setup): +``` +debootstrap --variant=minbase --arch=arm64 jessie /tmp/jessie-arm64/ http://archive.debian.org/debian +or +debootstrap --variant=minbase --arch=arm64 xenial /tmp/xenial-arm64/ http://ports.ubuntu.com/ +``` +2. build qemu-aarch64; cp qemu-aarch64 /tmp/jessie-arm64/ +3. chroot /tmp/jessie-arm64/ +4. ./qemu-aarch64 /bin/ls +``` +qemu: uncaught target signal 11 (Segmentation fault) - core dumped +Segmentation fault +```""" +additional = """Old userspace (eg Debian jessie, Ubuntu xenial) does not work within qemu 8.1-rc2 aarch64 linux-user emulation, since commit 59b6b42cd3446862567637f3a7ab31d69c9bef51 . My guess is that old userspace isn't prepared for recent CPU features, but it still smells strange. + +Not all programs segfaults. dash works, ls or bash does not. + +A chroot is easier in this case, since many old programs don't run inside current environment, like asserting while reading locale-specific information. To run debootstrap and to enter the resulting chroot, a working qemu-aarch64 binfmt_misc setup is needed. + +Reverting the mentioned commit makes everything work again.""" |