summary refs log tree commit diff stats
path: root/gitlab/issues/target_arm/host_missing/accel_missing/1600.toml
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-05-21 21:21:26 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-05-21 21:21:26 +0200
commit4b927bc37359dec23f67d3427fc982945f24f404 (patch)
tree245449ef9146942dc7fffd0235b48b7e70a00bf2 /gitlab/issues/target_arm/host_missing/accel_missing/1600.toml
parentaa8bd79cec7bf6790ddb01d156c2ef2201abbaab (diff)
downloademulator-bug-study-4b927bc37359dec23f67d3427fc982945f24f404.tar.gz
emulator-bug-study-4b927bc37359dec23f67d3427fc982945f24f404.zip
add gitlab issues in toml format
Diffstat (limited to 'gitlab/issues/target_arm/host_missing/accel_missing/1600.toml')
-rw-r--r--gitlab/issues/target_arm/host_missing/accel_missing/1600.toml33
1 files changed, 33 insertions, 0 deletions
diff --git a/gitlab/issues/target_arm/host_missing/accel_missing/1600.toml b/gitlab/issues/target_arm/host_missing/accel_missing/1600.toml
new file mode 100644
index 00000000..763127da
--- /dev/null
+++ b/gitlab/issues/target_arm/host_missing/accel_missing/1600.toml
@@ -0,0 +1,33 @@
+id = 1600
+title = "Aarch64/FEAT_SEL2  secure S1 translation for a NS page resolves to the secure IPA space"
+state = "closed"
+created_at = "2023-04-13T12:44:55.524Z"
+closed_at = "2023-05-13T08:35:45.554Z"
+labels = ["kind::Bug", "target: arm", "workflow::Patch available"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/1600"
+host-os = "Ubuntu"
+host-arch = "x86"
+qemu-version = "7.2.91 (v8.0.0-rc1-36-g60ca584b8a)"
+guest-os = "TF-A/Hafnium firmware + Linux"
+guest-arch = "Arm"
+description = """Follow up to https://lists.trustedfirmware.org/archives/list/hafnium@lists.trustedfirmware.org/thread/ZUHRGWVDPUQ5CK6SRWZ7AMI5IKVS6J47/
+
+In context of Hafnium project (SEL2 / SPM firmware), implementing secure/non-secure page tables split rooted by VTTBR/VSTTBR in TZ secure world.
+Observing transactions always resolve to the secure IPA space (hence to the page tables rooted to by VSTTBR) whichever the state of the S1 MMU translation NS bit.
+Access to a page mapped NS from the SEL1 Trusted OS, causes a S2 page fault even though mapped in page tables rooted to by VTTBR.
+
+The VTCR_EL2/VSTCR_EL2 settings at SEL2 are as follows:
+VTCR_EL2.NSA/NSW=10b
+VSTCR_EL2.SA/SW=00b
+
+Note the same set of changes (https://review.trustedfirmware.org/q/topic:%2522od/split-vttbr%2522+status:open) run fine for the same scenario on FVP."""
+reproduce = """1. build qemu master 60ca584b8af0de525656f959991a440f8c191f12
+2. unzip [qemu-sel2-vttbr-fail.zip](/uploads/ec556347c32d97f79c140c5bccf45c6b/qemu-sel2-vttbr-fail.zip)
+3. Run
+
+```
+<...>/qemu/build/aarch64-softmmu/qemu-system-aarch64 -nographic -serial file:uart0.log -serial file:uart1.log -smp 2 -machine virt,secure=on,mte=on,gic-version=3,virtualization=true -cpu max,sme=off,pauth-impdef=on -d unimp -semihosting-config enable=on,target=native -m 1057 -bios bl1.bin -initrd rootfs.cpio.gz -kernel Image -no-acpi -append 'console=ttyAMA0,38400 keep_bootcon root=/dev/vda2 nokaslr'  -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0,max-bytes=1024,period=1000 -netdev user,id=vmnic -device virtio-net-device,netdev=vmnic
+```"""
+additional = """[qemu-60ca58-qemu-tfa-hf-linux-fail.txt](/uploads/1db0155fc49140cf52913cd75b7494c1/qemu-60ca58-qemu-tfa-hf-linux-fail.txt) illustrates the failure, linux boot stops, after sharing a NS page to the TOS, and the TOS retrieving the page, mapping as NS and accessing it (ends in a dead loop, because of the S2 PF in the TOS).
+
+[qemu-tfa-hf-linux-pass.txt](/uploads/4e672617838e40fe3614c127531443b5/qemu-tfa-hf-linux-pass.txt) shows the expected output where the NS mem sharing operation succeeds."""