From 3b7466b943b5126cb450f32b99d54bfb536e510d Mon Sep 17 00:00:00 2001 From: Marios Pomonis Date: Tue, 1 Apr 2025 01:43:18 -0700 Subject: executor/kvm: add x86-64 SYZOS fuzzer This commit adds the actual SyzOS fuzzer for x86-64 and a small test. It also updates some necessary parts of the ARM version and adds some glue for i386. --- sys/linux/test/amd64-syz_kvm_setup_syzos_vm | 29 ++++++++++++++++++++++ sys/linux/test/arm64-syz_kvm_setup_syzos_vm | 6 ++--- .../arm64-syz_kvm_setup_syzos_vm-enable-pmu-mrs | 2 +- .../arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr | 2 +- ...64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-0 | 2 +- ...64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-1 | 2 +- ...64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-2 | 2 +- .../test/arm64-syz_kvm_setup_syzos_vm-memwrite | 4 +-- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-mrs | 2 +- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr | 2 +- .../test/arm64-syz_kvm_setup_syzos_vm-msr-emul-0 | 2 +- .../test/arm64-syz_kvm_setup_syzos_vm-msr-emul-1 | 2 +- .../test/arm64-syz_kvm_setup_syzos_vm-msr-emul-2 | 2 +- .../test/arm64-syz_kvm_setup_syzos_vm-msr-emul-3 | 2 +- .../test/arm64-syz_kvm_setup_syzos_vm-msr-emul-4 | 2 +- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-smc | 2 +- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3 | 4 +-- .../test/arm64-syz_kvm_setup_syzos_vm-vgicv3-cpu1 | 4 +-- .../test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its | 4 +-- .../arm64-syz_kvm_setup_syzos_vm-vgicv3-its-cmd | 4 +-- .../arm64-syz_kvm_setup_syzos_vm-vgicv3-unroll | 4 +-- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfe | 2 +- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfet | 6 ++--- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfi | 2 +- sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfit | 6 ++--- 25 files changed, 65 insertions(+), 36 deletions(-) create mode 100644 sys/linux/test/amd64-syz_kvm_setup_syzos_vm (limited to 'sys/linux/test') diff --git a/sys/linux/test/amd64-syz_kvm_setup_syzos_vm b/sys/linux/test/amd64-syz_kvm_setup_syzos_vm new file mode 100644 index 000000000..09d6cfe27 --- /dev/null +++ b/sys/linux/test/amd64-syz_kvm_setup_syzos_vm @@ -0,0 +1,29 @@ +# +# requires: arch=amd64 -threaded +# +r0 = openat$kvm(0, &AUTO='/dev/kvm\x00', 0x0, 0x0) +r1 = ioctl$KVM_CREATE_VM(r0, AUTO, 0x0) +r2 = syz_kvm_setup_syzos_vm$x86(r1, &(0x7f0000c00000/0x400000)=nil) +# Perform two uexits. The first one is done via a code blob: +# 4831ff xor rdi,rdi +# 48c7c600000400 mov rsi,0x40000 +# 4881c600010000 add rsi,0x100 +# 48893e mov QWORD PTR [rsi],rdi +# The second uexit is done via a syzos API command that sets uexit exit code to 0xaaaa. +# +r3 = syz_kvm_add_vcpu$x86(r2, &AUTO={0x0, &AUTO=[@code={AUTO, AUTO, {"4831ff48c7c6000004004881c60001000048893e", 0xc3}}, @uexit={AUTO, AUTO, 0xaaaa}], AUTO}) +r4 = ioctl$KVM_GET_VCPU_MMAP_SIZE(r0, AUTO) +r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) + +# Run till the first uexit. +# +ioctl$KVM_RUN(r3, AUTO, 0x0) +syz_kvm_assert_syzos_uexit$x86(r5, 0x0) +# Run till the second uexit. +# +ioctl$KVM_RUN(r3, AUTO, 0x0) +syz_kvm_assert_syzos_uexit$x86(r5, 0xaaaa) +# Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. +# +ioctl$KVM_RUN(r3, AUTO, 0x0) +syz_kvm_assert_syzos_uexit$x86(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm index 8ca716cd7..b2a0c59b4 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm @@ -19,12 +19,12 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the first uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0x0) +syz_kvm_assert_syzos_uexit$arm64(r5, 0x0) # Run till the second uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xaaaa) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xaaaa) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-mrs b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-mrs index 636660530..8a6dab724 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-mrs +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-mrs @@ -22,4 +22,4 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr index 4a4697a53..c2586d557 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr @@ -22,5 +22,5 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013df40, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-0 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-0 index 56a1f2c83..2e8f0fba9 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-0 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-0 @@ -35,7 +35,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013c4f1, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013c4f2, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013dce0, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-1 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-1 index df58158c8..6ed9d7e2f 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-1 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-1 @@ -35,7 +35,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013dcea, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013dcf0, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013dcf3, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-2 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-2 index cbe4f09fe..5f9720d25 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-2 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-enable-pmu-msr-emul-2 @@ -32,7 +32,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013df60, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013df61, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013df62, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-memwrite b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-memwrite index 4f36d5be3..187eadbc0 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-memwrite +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-memwrite @@ -13,8 +13,8 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the emulated uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0x0) +syz_kvm_assert_syzos_uexit$arm64(r5, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-mrs b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-mrs index 3397c9e6e..b984289b2 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-mrs +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-mrs @@ -14,4 +14,4 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr index acb3c10ca..1be423dbb 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr @@ -14,5 +14,5 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013c600, 0xfefefee0) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-0 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-0 index 3f1164b71..e329712d0 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-0 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-0 @@ -26,7 +26,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x6030000000138010, 0x8000) syz_kvm_assert_reg(r3, 0x6030000000138012, 0x8000) syz_kvm_assert_reg(r3, 0x6030000000138004, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-1 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-1 index f6625976d..adc2c0934 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-1 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-1 @@ -26,7 +26,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x6030000000138015, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013801d, 0x8000) syz_kvm_assert_reg(r3, 0x6030000000138025, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-2 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-2 index 8c9ee2de6..14836d6c7 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-2 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-2 @@ -26,7 +26,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x6030000000138017, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013801f, 0x8000) syz_kvm_assert_reg(r3, 0x6030000000138084, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-3 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-3 index 8e8389c0a..8c3e6db3b 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-3 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-3 @@ -26,7 +26,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013c520, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013c521, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013c522, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-4 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-4 index c99054cf7..e206d3407 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-4 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-msr-emul-4 @@ -26,7 +26,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) syz_kvm_assert_reg(r3, 0x603000000013c65e, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013c65f, 0x8000) syz_kvm_assert_reg(r3, 0x603000000013c661, 0x8000) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-smc b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-smc index 143d6d61c..bb91f426b 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-smc +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-smc @@ -25,4 +25,4 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3 index 541aaed30..242e48475 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3 @@ -12,7 +12,7 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) # # Calling KVM_RUN here again would result in infinite loop. # Instead, signal SPI 32 (0x1000020), so that the guest can execute another uexit in the IRQ handler. @@ -21,4 +21,4 @@ ioctl$KVM_IRQ_LINE(r1, AUTO, &AUTO={0x1000020, 0x1}) ioctl$KVM_RUN(r3, AUTO, 0x0) # 0xfffffffffffffffe is UEXIT_IRQ. # -syz_kvm_assert_syzos_uexit(r5, 0xfffffffffffffffe) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xfffffffffffffffe) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-cpu1 b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-cpu1 index ff552c5b7..5ee849468 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-cpu1 +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-cpu1 @@ -13,11 +13,11 @@ r6 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r5, 0x3, 0x1, r3, 0x0) r7 = mmap$KVM_VCPU(&(0x7f000000a000/0x1000)=nil, r5, 0x3, 0x1, r4, 0x0) ioctl$KVM_RUN(r4, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r7, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r7, 0xffffffffffffffff) # # Calling KVM_RUN here again would result in infinite loop. # Instead, signal SPI 32 on CPU 1 (0x1010020), so that the guest can execute another uexit in the IRQ handler. # ioctl$KVM_IRQ_LINE(r1, AUTO, &AUTO={0x1010020, 0x1}) ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xfffffffffffffffe) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xfffffffffffffffe) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its index 6e642da75..a2570b6a0 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its @@ -27,7 +27,7 @@ r6 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r5, 0x3, 0x1, r3, 0x0) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xffffffffffffffff) # # Calling KVM_RUN here again would result in infinite loop. # Instead, signal LPI 0x2000 that is mapped to the event 0, so that the guest can execute another uexit in the IRQ handler. @@ -36,4 +36,4 @@ syz_kvm_assert_syzos_uexit(r6, 0xffffffffffffffff) # ioctl$KVM_SIGNAL_MSI(r1, AUTO, &AUTO={0x8090040, 0x0, 0x0, 0x1, 0x0, ""}) ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xfffffffffffffffe) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xfffffffffffffffe) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its-cmd b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its-cmd index d78a013c4..a3eec318c 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its-cmd +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-its-cmd @@ -31,9 +31,9 @@ r6 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r5, 0x3, 0x1, r3, 0x0) # This KVM_RUN will stop after receiving the LPI. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xfffffffffffffffe) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xfffffffffffffffe) # # This KVM_RUN will stop after finishing the user program. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-unroll b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-unroll index 761974c7d..0110d0f1a 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-unroll +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-vgicv3-unroll @@ -20,11 +20,11 @@ r5 = ioctl$KVM_GET_VCPU_MMAP_SIZE(r0, AUTO) r6 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r5, 0x3, 0x1, r3, 0x0) ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xffffffffffffffff) # # Calling KVM_RUN here again would result in infinite loop. # Instead, signal SPI 32 (0x1000020), so that the guest can execute another uexit in the IRQ handler. # ioctl$KVM_IRQ_LINE(r1, AUTO, &AUTO={0x1000020, 0x1}) ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r6, 0xfffffffffffffffe) +syz_kvm_assert_syzos_uexit$arm64(r6, 0xfffffffffffffffe) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfe b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfe index 0c74580b5..9f8a17d1c 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfe +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfe @@ -14,4 +14,4 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the first uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0x0) +syz_kvm_assert_syzos_uexit$arm64(r5, 0x0) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfet b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfet index 3e5850890..6c99a486c 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfet +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfet @@ -14,12 +14,12 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the first uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0x0) +syz_kvm_assert_syzos_uexit$arm64(r5, 0x0) # Run till the second uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xaaaa) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xaaaa) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfi b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfi index 802783b4e..229a83e4e 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfi +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfi @@ -14,4 +14,4 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the first uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0x0) +syz_kvm_assert_syzos_uexit$arm64(r5, 0x0) diff --git a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfit b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfit index 36bcb4bdf..ffff97c46 100644 --- a/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfit +++ b/sys/linux/test/arm64-syz_kvm_setup_syzos_vm-wfit @@ -14,12 +14,12 @@ r5 = mmap$KVM_VCPU(&(0x7f0000009000/0x1000)=nil, r4, 0x3, 0x1, r3, 0x0) # Run till the first uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0x0) +syz_kvm_assert_syzos_uexit$arm64(r5, 0x0) # Run till the second uexit. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xaaaa) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xaaaa) # Run till the end of guest_main(). 0xffffffffffffffff is UEXIT_END. # ioctl$KVM_RUN(r3, AUTO, 0x0) -syz_kvm_assert_syzos_uexit(r5, 0xffffffffffffffff) +syz_kvm_assert_syzos_uexit$arm64(r5, 0xffffffffffffffff) -- cgit mrf-deployment