Skip to content

Commit 11c5b3f

Browse files
sys/linux/test: add seeds for known KVM bugs
1 parent f27bd15 commit 11c5b3f

9 files changed

+119
-0
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x1)
7+
ioctl$KVM_CREATE_DEVICE(r1, 0xc00caee0, &(0x7f0000000040)={0x7, <r2=>0xffffffffffffffff, 0x0})
8+
ioctl$KVM_SET_DEVICE_ATTR(r2, 0x4018aee1, &(0x7f0000000280)=@attr_arm64={0x0, 0x0, 0x3, 0x0})
9+
ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x1) (async)
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000180), 0x0, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0)
7+
openat$kvm(0xffffffffffffff9c, 0x0, 0x0, 0x0)
8+
ioctl$KVM_ARM_VCPU_INIT(r2, 0x4020aeae, &(0x7f0000000140)={0x5, 0x8, ""}) (async, rerun: 32)
9+
ioctl$KVM_RUN(r2, 0xae80, 0x0)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0x0, &(0x7f0000000040), 0x0, 0x0) (async)
5+
r1 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0)
6+
r2 = ioctl$KVM_CREATE_VM(r1, 0xae01, 0x0)
7+
ioctl$KVM_CREATE_DEVICE(r2, 0xc00caee0, &(0x7f0000000700)={0x7, 0x0, 0x0}) (async)
8+
ioctl$KVM_CREATE_VCPU(r2, 0xae41, 0x2)
9+
ioctl$KVM_IRQ_LINE(r2, 0x4008ae61, &(0x7f0000000240)={0x200002f, 0x0}) (async)
10+
r3 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
11+
r4 = syz_kvm_setup_syzos_vm(r3, &(0x7f0000c00000/0x400000)=nil)
12+
r5 = syz_kvm_add_vcpu(r4, &(0x7f0000000080)={0x0, &(0x7f0000000000)=ANY=[@ANYBLOB="054c0f0000000060b47892001800000000003b67ed394d2d53cb"], 0x18}, 0x0, 0x0) (async, rerun: 64)
13+
syz_kvm_vgic_v3_setup(r3, 0x1, 0x100)
14+
ioctl$KVM_RUN(r5, 0xae80, 0x0) (async)
15+
ioctl$KVM_IRQ_LINE(r3, 0x4008ae61, &(0x7f0000000100)={0x1000020, 0x1}) (async, rerun: 32)
16+
ioctl$KVM_RUN(r5, 0xae80, 0x0) (rerun: 32)
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0x0, &(0x7f0000000040), 0x0, 0x0) (async)
5+
ioctl$KVM_IRQFD(0xffffffffffffffff, 0x4020ae76, &(0x7f0000000140)={0xffffffffffffffff, 0xc8, 0x0, 0x0, ""}) (async)
6+
r1 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0)
7+
r2 = ioctl$KVM_CREATE_VM(r1, 0xae01, 0x0)
8+
ioctl$KVM_CREATE_DEVICE(r2, 0xc00caee0, &(0x7f0000000140)={0x4, <r3=>0xffffffffffffffff, 0x1})
9+
r4 = ioctl$KVM_CREATE_VM(r3, 0x894c, 0x0)
10+
r5 = openat$kvm(0x0, &(0x7f0000000040), 0x0, 0x0)
11+
r6 = ioctl$KVM_CREATE_VM(r5, 0xae01, 0x0)
12+
r7 = ioctl$KVM_CREATE_VCPU(r6, 0xae41, 0x1)
13+
ioctl$KVM_ARM_VCPU_INIT(r7, 0x4020aeae, &(0x7f0000000080)={0x5, 0x1, ""}) (async)
14+
ioctl$KVM_SET_ONE_REG(r7, 0x4010aeac, &(0x7f00000001c0)=@arm64_sys={0x6030000000138064, &(0x7f00000000c0)=0x8000})
15+
ioctl$KVM_CREATE_VCPU(r4, 0xb702, 0x0) (async)
16+
openat$kvm(0x0, &(0x7f0000000080), 0x141001, 0x0)
17+
ioctl$KVM_IOEVENTFD(0xffffffffffffffff, 0x4040ae79, &(0x7f0000000100))
18+
r8 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
19+
r9 = syz_kvm_setup_syzos_vm(r8, &(0x7f0000c00000/0x400000)=nil)
20+
r10 = syz_kvm_add_vcpu(r9, &(0x7f0000000080)={0x0, &(0x7f00000000c0)=[@irq_setup={0x5, 0x18, {0x1, 0x20}}], 0x18}, 0x0, 0x0) (async)
21+
r11 = syz_kvm_add_vcpu(r9, &(0x7f0000000100)={0x0, &(0x7f00000001c0)=ANY=[@ANYBLOB="050000"], 0x18}, 0x0, 0x0)
22+
syz_kvm_vgic_v3_setup(r8, 0x2, 0x100) (async)
23+
ioctl$KVM_RUN(r11, 0xae80, 0x0) (async)
24+
ioctl$KVM_RUN(r10, 0xae80, 0x0)
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0x0, &(0x7f0000000040), 0x0, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
r2 = syz_kvm_setup_syzos_vm(r1, &(0x7f0000c00000/0x400000)=nil)
7+
r3 = syz_kvm_add_vcpu(r2, &(0x7f0000000080)={0x0, &(0x7f0000000240)=ANY=[@ANYBLOB="05000000000000001800000000000000010000005002"], 0x18}, 0x0, 0x0)
8+
ioctl$KVM_RUN(r3, 0xae80, 0x0)
9+
ioctl$KVM_SET_VCPU_EVENTS(r3, 0x4040aea0, &(0x7f0000000000)=@arm64={0x0, 0x1, 0xf, '\x00', 0xfffffffffffff105, ""})
10+
ioctl$KVM_RUN(r3, 0xae80, 0x0)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
ioctl$KVM_CREATE_VM(0xffffffffffffffff, 0xae01, 0x0)
7+
r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0)
8+
ioctl$KVM_ARM_VCPU_INIT(r2, 0x4020aeae, &(0x7f0000000340)={0x5, 0x8, ""})
9+
ioctl$KVM_RUN(r2, 0xae80, 0x0)
10+
mmap$KVM_VCPU(&(0x7f0000ff5000/0x3000)=nil, 0x930, 0x100000f, 0x24132, 0xffffffffffffffff, 0x0)
11+
ioctl$KVM_ARM_VCPU_INIT(r2, 0x4020aeae, &(0x7f0000000340)={0x5, 0x8, ""})
12+
ioctl$KVM_CREATE_VM(0xffffffffffffffff, 0xae01, 0x0)
13+
mmap$KVM_VCPU(&(0x7f0000ff5000/0x3000)=nil, 0x930, 0x100000f, 0x24132, 0xffffffffffffffff, 0x0)
14+
ioctl$KVM_ARM_VCPU_INIT(0xffffffffffffffff, 0x4020aeae, 0x0)
15+
ioctl$KVM_SET_ONE_REG(0xffffffffffffffff, 0x4010aeac, 0x0)
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0x0, &(0x7f0000000040), 0x0, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x3)
7+
openat$kvm(0x0, 0x0, 0x0, 0x0)
8+
ioctl$KVM_ARM_VCPU_INIT(r2, 0x4020aeae, &(0x7f0000000000)={0x5, 0x18, ""})
9+
ioctl$KVM_ARM_VCPU_FINALIZE(r2, 0x4004aec2, &(0x7f0000000180)=0x4)
10+
ioctl$KVM_RUN(r2, 0xae80, 0x0)
11+
ioctl$KVM_ARM_VCPU_INIT(r2, 0x4020aeae, &(0x7f0000000000)={0x5, 0x18, ""}) (async)
12+
syz_kvm_vgic_v3_setup(r1, 0x3, 0x180)
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0x0, &(0x7f0000000080), 0x2000, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
r2 = syz_kvm_setup_syzos_vm(r1, &(0x7f0000c00000/0x400000)=nil)
7+
r3 = syz_kvm_add_vcpu(r2, &(0x7f00000000c0)={0x0, &(0x7f0000000240)=[@its_setup={0x7, 0x28, {0x0, 0x1, 0x17}}, @memwrite={0x6, 0x30, @vgic_gicr={0x80a0000, 0xa0, 0x1, 0xb}}], AUTO}, 0x0, 0x0)
8+
syz_kvm_vgic_v3_setup(r1, 0x1, 0x100)
9+
ioctl$KVM_CREATE_DEVICE(r1, 0xc00caee0, &(0x7f0000000180)={0x8, <r4=>0xffffffffffffffff, 0x0})
10+
ioctl$KVM_SET_DEVICE_ATTR(r4, 0x4018aee1, &(0x7f00000001c0)=@attr_arm64={0x0, 0x0, 0x4, &(0x7f0000000200)=0x8080000})
11+
ioctl$KVM_RUN(r3, 0xae80, 0x0)
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#
2+
# requires: arch=arm64 manual
3+
#
4+
r0 = openat$kvm(0x0, &(0x7f0000000040), 0x0, 0x0)
5+
r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0)
6+
r2 = syz_kvm_setup_syzos_vm(r1, &(0x7f0000c00000/0x400000)=nil)
7+
r3 = syz_kvm_add_vcpu(r2, &(0x7f0000000080)={0x0, &(0x7f00000000c0)=[@its_setup={0x7, 0x28, {0x2, 0x2, 0x1}}], 0x28}, 0x0, 0x0)
8+
syz_kvm_vgic_v3_setup(r1, 0x3, 0xa0)
9+
ioctl$KVM_CREATE_DEVICE(r1, 0xc00caee0, &(0x7f0000000100)={0x8, <r4=>0xffffffffffffffff, 0x0})
10+
ioctl$KVM_SET_DEVICE_ATTR(r4, 0x4018aee1, &(0x7f0000000000)=@attr_arm64={0x0, 0x0, 0x4, &(0x7f0000000180)=0x8080000})
11+
ioctl$KVM_RUN(r3, 0xae80, 0x0)
12+
ioctl$KVM_SET_DEVICE_ATTR(r4, 0x4018aee1, &(0x7f0000000300)=@attr_arm64={0x0, 0x4, 0x1, 0x0}) (async, rerun: 64)
13+
ioctl$KVM_SET_DEVICE_ATTR(r4, 0x4018aee1, &(0x7f00000000c0)=@attr_arm64={0x0, 0x4, 0x2, 0x0})

0 commit comments

Comments
 (0)