summary refs log tree commit diff stats
path: root/results/classifier/accel-gemma3:12b/vmm/1600
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/accel-gemma3:12b/vmm/1600')
-rw-r--r--results/classifier/accel-gemma3:12b/vmm/160026
1 files changed, 26 insertions, 0 deletions
diff --git a/results/classifier/accel-gemma3:12b/vmm/1600 b/results/classifier/accel-gemma3:12b/vmm/1600
new file mode 100644
index 000000000..b64f67c1f
--- /dev/null
+++ b/results/classifier/accel-gemma3:12b/vmm/1600
@@ -0,0 +1,26 @@
+
+Aarch64/FEAT_SEL2  secure S1 translation for a NS page resolves to the secure IPA space
+Description of problem:
+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.
+Steps to 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 information:
+[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.