- qemu_cpu: only i386, x86_64 virt_test_type = qemu type = cpuid start_vm = "no" smp = 1 # ask autotest to not mess with the cpu_model settings auto_cpu_model = no # QEMU versions: variants qemu_flavor: - @unknown: - rhel: variants rhel_version: - 6_0: - 6_1: - 6_2: - 6_3: - 6_4: - upstream: variants qemu_version: - 1_0: - 1_1: - 1_2: - 1_3: - 1_4: - 1_5: # uncomment the line corresponding to the QEMU version, if you know it: only (qemu_flavor = unknown) #only (qemu_flavor = rhel).(rhel_version = 6_4) #only (qemu_flavor = upstream).(qemu_version = 1_5) # CPU model lists: variants: - cpu.unset: # this variant will not force cpu_model to any value - cpu.intel: variants: - 486: cpu_model = "486" - core2duo: cpu_model = "core2duo" - kvm32: cpu_model = "kvm32" - kvm64: cpu_model = "kvm64" - qemu32: cpu_model = "qemu32" - coreduo: cpu_model = "coreduo" - pentium: cpu_model = "pentium" - pentium2: cpu_model = "pentium2" - pentium3: cpu_model = "pentium3" - n270: cpu_model = "n270" - Conroe: cpu_model = "Conroe" - Penryn: cpu_model = "Penryn" - Nehalem: cpu_model = "Nehalem" - Westmere: cpu_model = "Westmere" - SandyBridge: cpu_model = "SandyBridge" - Haswell: cpu_model = "Haswell" - cpu.amd: variants: - qemu64: cpu_model = "qemu64" - phenom: cpu_model = "phenom" - athlon: cpu_model = "athlon" - Opteron_G1: cpu_model = "Opteron_G1" - Opteron_G2: cpu_model = "Opteron_G2" - Opteron_G3: cpu_model = "Opteron_G3" - Opteron_G4: cpu_model = "Opteron_G4" - Opteron_G5: cpu_model = "Opteron_G5" - cpu64_rhel6: only (qemu_flavor = rhel) cpu_model = "cpu64-rhel6" - cpu64_rhel4: only (qemu_flavor = rhel) cpu_model = "cpu64-rhel5" variants: - kvm: - nokvm: enable_kvm = "no" disable_kvm = "yes" variants: - check_models: test_type = "test_qemu_cpu_models_list" no cpu.unset # no need to check this with both kvm enabled and disabled: only nokvm # we don't know if all models will be available if QEMU # version is unknown: no (qemu_flavor = unknown) # CPUID data tests: - cpuid: # 486 is excluded due to not supporting cpuid no 486 variants: - default.vendor: test_type = "default_vendor" kvm: # when KVM is enabled, all CPU models have vendor set # to match host, by default vendor = "host" # instead of running one test case per CPU model, # run only one test that checks every single model, # even the ones not listed in the "cpu.*" variants above only cpu.unset cpu_models = "*" nokvm: # we don't know if all models will be available if QEMU # version is unknown: no (qemu_flavor = unknown) only cpu.intel cpu.amd cpu.intel: vendor = "GenuineIntel" cpu.amd: vendor = "AuthenticAMD" - signature: only kvm only cpu.unset test_type = "cpuid_signature" variants: - KVM: signature = "KVMKVMKVM\x00\x00\x00" - hv_relaxed: signature = "Microsoft Hv" flags = "hv_relaxed" - hv_vapic: signature = "Microsoft Hv" flags = "hv_vapic" - hv_spinlocks: signature = "Microsoft Hv" flags = "hv_spinlocks=4095" - 0x40000001: signature = "Hv#1" leaf = "0x40000001" flags = "hv_relaxed" regs = "eax" - hyperv: only kvm only cpu.unset test_type = "cpuid_bit_test" variants: - vapic40000003: bits = "4 5" leaf = "0x40000003" flags = "hv_vapic" - relaxed40000003: bits = "5" leaf = "0x40000003" flags = "hv_relaxed" - vapic40000004: bits = "3" leaf = "0x40000004" flags = "hv_vapic" - relaxed40000004: bits = "5" leaf = "0x40000004" flags = "hv_relaxed" - hv_spinlocks: test_type = "cpuid_reg_test" reg = "ebx" leaf = "0x40000004" variants: - min: value = "4095" flags = "hv_spinlocks=0xfff" - nan: xfail = "yes" value = "4095" flags = "hv_spinlocks=0xg" - FFFFFFFF_xfail: xfail = "yes" value = "4294967295" flags = "hv_spinlocks=0xffffffff" - def: value = "4294967295" flags = "hv_relaxed" - max_leaf: test_type = "cpuid_reg_test" reg = "eax" leaf = "0x40000000" value = "1073741829" flags = "hv_relaxed" - build: test_type = "cpuid_reg_test" reg = "eax" leaf = "0x40000002" value = "7100" flags = "hv_relaxed" - version: test_type = "cpuid_reg_test" reg = "ebx" leaf = "0x40000002" value = "393217" flags = "hv_relaxed" - max_vcpus: test_type = "cpuid_reg_test" reg = "eax" leaf = "0x40000005" value = "64" flags = "hv_relaxed" - max_logical_cpus: test_type = "cpuid_reg_test" reg = "eax" leaf = "0x40000005" value = "64" flags = "hv_relaxed" - custom: # the checks below will be run without setting the CPU model # explicitly. they can be repeated for each known CPU model # if removing the following line: only cpu.unset variants: - vendor: test_type = "custom_vendor" variants: - normal: vendor = "QWERasdfZXCV" - tooshort: vendor = "Q" xfail = "yes" - empty: xfail = "yes" vendor = "" - level: test_type = "custom_level" variants: - level5: level = 5 - NaN: xfail = "yes" level = "five" - family: test_type = "custom_family" variants: - family6: family = 6 - ext: family = 21 - max: # 0xff + 0xf = 270 family = 270 - NaN: xfail = "yes" family = foo - out_of_range: xfail = "yes" family = 271 - model: test_type = "custom_model" variants: - model15: model = 15 - max: model = 255 - out_of_range: xfail = "yes" model = 256 - NaN: xfail = "yes" model = foo - stepping: test_type = "custom_stepping" variants: - stepping5: stepping = 5 - max: stepping = 15 - out_of_range: xfail = "yes" stepping = 16 - Nan: xfail = "yes" stepping = foo - xlevel: test_type = "custom_xlevel" variants: - fixup: # fix me when fixup in QEMU is removed xlevel = 5 # expect fixup to 0x80000005 expect_xlevel = 2147483653 - level80000001: # xlevel = 0x80000001 xlevel = 2147483649 - supported_max: # xlevel = 0x8000000A xlevel = 2147483658 - Nan: xfail = "yes" xlevel = foo - model_id: test_type = "custom_model_id" model_id = "QEMU CPU Brand by virt-test"