aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/dev_kvm.txt.warn
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-12-09 07:42:48 +0100
committerDmitry Vyukov <dvyukov@google.com>2019-12-17 19:03:39 +0100
commit64ca0a371100fc7dfdb20de9263763e46c88a436 (patch)
tree0e417568271dbbcc5817034a624a31d62bf20633 /sys/linux/dev_kvm.txt.warn
parentf950e82d47572b79581fd6b8355504cddb06a7f4 (diff)
tools/syz-check: add description checking utility
syz-check parses vmlinux dwarf, extracts struct descriptions, compares them with what we have (size, fields, alignment, etc) and produces .warn files. This is first raw version, it can be improved in a number of ways. But it already helped to identify a critical issue #1542 and shows some wrong struct descriptions. Update #590
Diffstat (limited to 'sys/linux/dev_kvm.txt.warn')
-rw-r--r--sys/linux/dev_kvm.txt.warn70
1 files changed, 70 insertions, 0 deletions
diff --git a/sys/linux/dev_kvm.txt.warn b/sys/linux/dev_kvm.txt.warn
new file mode 100644
index 000000000..e76f977a1
--- /dev/null
+++ b/sys/linux/dev_kvm.txt.warn
@@ -0,0 +1,70 @@
+0162: struct kvm_text_x86: no corresponding struct in kernel
+0169: struct kvm_text_x86_real: no corresponding struct in kernel
+0175: struct kvm_text_x86_16: no corresponding struct in kernel
+0181: struct kvm_text_x86_32: no corresponding struct in kernel
+0187: struct kvm_text_x86_64: no corresponding struct in kernel
+0193: struct kvm_text_arm64: no corresponding struct in kernel
+0199: struct kvm_setup_opt_x86: no corresponding struct in kernel
+0211: struct kvm_setup_opt_cr0: no corresponding struct in kernel
+0216: struct kvm_setup_opt_cr4: no corresponding struct in kernel
+0221: struct kvm_setup_opt_efer: no corresponding struct in kernel
+0226: struct kvm_setup_opt_flags: no corresponding struct in kernel
+0231: struct kvm_setup_opt_cstype0: no corresponding struct in kernel
+0236: struct kvm_setup_opt_cstype3: no corresponding struct in kernel
+0241: struct kvm_setup_opt_dstype0: no corresponding struct in kernel
+0246: struct kvm_setup_opt_dstype3: no corresponding struct in kernel
+0251: struct kvm_setup_opt_vmwrite: no corresponding struct in kernel
+0264: struct kvm_setup_opt_arm64: no corresponding struct in kernel
+0270: struct kvm_setup_opt_feature: no corresponding struct in kernel
+0291: struct kvm_arm_device_addr: no corresponding struct in kernel
+0314: struct kvm_s390_interrupt: no corresponding struct in kernel
+0364: struct kvm_one_reg: no corresponding struct in kernel
+0369: struct kvm_s390_ucas_mapping: no corresponding struct in kernel
+0375: struct kvm_dirty_tlb: no corresponding struct in kernel
+0393: struct kvm_assigned_msix_entry: no corresponding struct in kernel
+0399: struct kvm_assigned_msix_nr: no corresponding struct in kernel
+0418: struct kvm_irq_routing_entry_u: no corresponding struct in kernel
+0430: struct kvm_irq_routing_msi: bad number of fields: syz=3 kernel=4
+0430: struct kvm_irq_routing_msi: bad size: syz=12 kernel=16
+0449: struct kvm_assigned_irq: no corresponding struct in kernel
+0456: struct kvm_assigned_pci_dev: no corresponding struct in kernel
+0476: struct kvm_xsave: bad size: syz=1024 kernel=4096
+0477: field kvm_xsave.region/region: bad size: syz=1024 kernel=4096
+0480: struct kvm_enable_cap_cpu: no corresponding struct in kernel
+0487: struct kvm_enable_cap_vm: no corresponding struct in kernel
+0502: struct kvm_vcpu_events: bad number of fields: syz=19 kernel=9
+0502: struct kvm_vcpu_events: bad size: syz=28 kernel=64
+0503: field kvm_vcpu_events.exinjec/exception: bad size: syz=1 kernel=8
+0504: field kvm_vcpu_events.exnr/interrupt: bad offset: syz=1 kernel=8
+0504: field kvm_vcpu_events.exnr/interrupt: bad size: syz=1 kernel=4
+0505: field kvm_vcpu_events.exhec/nmi: bad offset: syz=2 kernel=12
+0505: field kvm_vcpu_events.exhec/nmi: bad size: syz=1 kernel=4
+0506: field kvm_vcpu_events.pad1/sipi_vector: bad offset: syz=3 kernel=16
+0506: field kvm_vcpu_events.pad1/sipi_vector: bad size: syz=1 kernel=4
+0507: field kvm_vcpu_events.exec/flags: bad offset: syz=4 kernel=20
+0509: field kvm_vcpu_events.ininjec/smi: bad offset: syz=8 kernel=24
+0509: field kvm_vcpu_events.ininjec/smi: bad size: syz=1 kernel=4
+0510: field kvm_vcpu_events.innr/reserved: bad offset: syz=9 kernel=28
+0510: field kvm_vcpu_events.innr/reserved: bad size: syz=1 kernel=27
+0511: field kvm_vcpu_events.insoft/exception_has_payload: bad offset: syz=10 kernel=55
+0512: field kvm_vcpu_events.inshad/exception_payload: bad offset: syz=11 kernel=56
+0512: field kvm_vcpu_events.inshad/exception_payload: bad size: syz=1 kernel=8
+0586: struct kvm_translation: bad number of fields: syz=5 kernel=6
+0605: struct kvm_regs: bad number of fields: syz=3 kernel=18
+0606: field kvm_regs.gp/rax: bad size: syz=128 kernel=8
+0607: field kvm_regs.rip/rbx: bad offset: syz=128 kernel=8
+0608: field kvm_regs.rflags/rcx: bad offset: syz=136 kernel=16
+0658: field kvm_fpu.fsw/fsw: bad size: syz=1 kernel=2
+0659: field kvm_fpu.ftws/ftwx: bad offset: syz=131 kernel=132
+0660: field kvm_fpu.pad1/pad1: bad offset: syz=132 kernel=133
+0689: struct kvm_irqchip: bad size: syz=224 kernel=520
+0692: field kvm_irqchip.chip/chip: bad size: syz=216 kernel=512
+0695: struct kvm_irq_chip: no corresponding struct in kernel
+0728: struct kvm_ioapic_redir: no corresponding struct in kernel
+0742: struct kvm_mce_cap: no corresponding struct in kernel
+0783: struct kvm_nested_state: bad number of fields: syz=7 kernel=5
+0783: struct kvm_nested_state: bad size: syz=8320 kernel=128
+0787: field kvm_nested_state.vmx/hdr: bad size: syz=24 kernel=120
+0788: field kvm_nested_state.pad/data: bad offset: syz=32 kernel=128
+0788: field kvm_nested_state.pad/data: bad size: syz=96 kernel=0
+0793: struct kvm_vmx_nested_state: no corresponding struct in kernel