diff --git a/.buildkite/pipeline_cpu_template.py b/.buildkite/pipeline_cpu_template.py index e42ae926d2e..a9c8e2239c4 100755 --- a/.buildkite/pipeline_cpu_template.py +++ b/.buildkite/pipeline_cpu_template.py @@ -70,7 +70,6 @@ class BkStep(str, Enum): "m5n.metal", "m6i.metal", "m6a.metal", - "m7a.metal-48xl", ], }, } diff --git a/CHANGELOG.md b/CHANGELOG.md index f8507300e90..bd79426703c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,10 @@ and this project adheres to WAITPKG CPUID bit in CPUID normalization. The feature enables a guest to put a physical processor into an idle state, which is undesirable in a FaaS environment since that is what the host wants to decide. +- [#5142](https://github.com/firecracker-microvm/firecracker/pull/5142): + Clarified what CPU models are supported by each existing CPU template. + Firecracker exits with an error if a CPU template is used on an unsupported + CPU model. ### Deprecated diff --git a/docs/cpu_templates/cpu-templates.md b/docs/cpu_templates/cpu-templates.md index a2d8b06fceb..920267940b8 100644 --- a/docs/cpu_templates/cpu-templates.md +++ b/docs/cpu_templates/cpu-templates.md @@ -48,14 +48,14 @@ Firecracker supports two types of CPU templates: At the moment the following set of static CPU templates are supported: -| CPU template | CPU vendor | CPU model | -| ------------ | ---------- | --------------------- | -| C3 | Intel | any | -| T2 | Intel | any | -| T2A | AMD | Milan | -| T2CL | Intel | Cascade Lake or newer | -| T2S | Intel | any | -| V1N1 | ARM | Neoverse V1 | +| CPU template | CPU vendor | CPU model | +| ------------ | ---------- | ------------------------------- | +| C3 | Intel | Skylake, Cascade Lake, Ice Lake | +| T2 | Intel | Skylake, Cascade Lake, Ice Lake | +| T2A | AMD | Milan | +| T2CL | Intel | Cascade Lake, Ice Lake | +| T2S | Intel | Skylake, Cascade Lake | +| V1N1 | ARM | Neoverse V1 | T2 and C3 templates are mapped as close as possible to AWS T2 and C3 instances in terms of CPU features. Note that on a microVM that is lauched with the C3 @@ -71,8 +71,8 @@ a performance assessment if they wish to use the T2S template. Note that Firecracker expects the host to always be running the latest version of the microcode. -The T2CL template is mapped to be close to Intel Cascade Lake. It is not safe to -use it on Intel CPUs older than Cascade Lake (such as Skylake). +The T2CL template is mapped to be close to Intel Cascade Lake. It is only safe +to use it on Intel Cascade Lake and Ice Lake. The only AMD template is T2A. It is considered safe to be used with AMD Milan. diff --git a/src/vmm/src/arch/x86_64/cpu_model.rs b/src/vmm/src/arch/x86_64/cpu_model.rs index fd3399a736f..ecc4cf259ed 100644 --- a/src/vmm/src/arch/x86_64/cpu_model.rs +++ b/src/vmm/src/arch/x86_64/cpu_model.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: Apache-2.0 use std::arch::x86_64::__cpuid as host_cpuid; -use std::cmp::{Eq, Ordering, PartialEq, PartialOrd}; +use std::cmp::{Eq, PartialEq}; /// Structure representing x86_64 CPU model. #[derive(Debug, Eq, PartialEq)] @@ -19,6 +19,42 @@ pub struct CpuModel { pub stepping: u8, } +/// Family / Model / Stepping for Intel Skylake +pub const SKYLAKE_FMS: CpuModel = CpuModel { + extended_family: 0x0, + extended_model: 0x5, + family: 0x6, + model: 0x5, + stepping: 0x4, +}; + +/// Family / Model / Stepping for Intel Cascade Lake +pub const CASCADE_LAKE_FMS: CpuModel = CpuModel { + extended_family: 0x0, + extended_model: 0x5, + family: 0x6, + model: 0x5, + stepping: 0x7, +}; + +/// Family / Model / Stepping for Intel Ice Lake +pub const ICE_LAKE_FMS: CpuModel = CpuModel { + extended_family: 0x0, + extended_model: 0x6, + family: 0x6, + model: 0xa, + stepping: 0x6, +}; + +/// Family / Model / Stepping for AMD Milan +pub const MILAN_FMS: CpuModel = CpuModel { + extended_family: 0xa, + extended_model: 0x0, + family: 0xf, + model: 0x1, + stepping: 0x1, +}; + impl CpuModel { /// Get CPU model from current machine. pub fn get_cpu_model() -> Self { @@ -27,19 +63,6 @@ impl CpuModel { let eax = unsafe { host_cpuid(0x1) }.eax; CpuModel::from(&eax) } - - /// Check if the current CPU model is Intel Cascade Lake or later. - pub fn is_at_least_cascade_lake(&self) -> bool { - let cascade_lake = CpuModel { - extended_family: 0, - extended_model: 5, - family: 6, - model: 5, - stepping: 7, - }; - - self >= &cascade_lake - } } impl From<&u32> for CpuModel { @@ -54,59 +77,22 @@ impl From<&u32> for CpuModel { } } -impl From<&CpuModel> for u32 { - fn from(cpu_model: &CpuModel) -> Self { - (u32::from(cpu_model.extended_family) << 20) - | (u32::from(cpu_model.extended_model) << 16) - | (u32::from(cpu_model.family) << 8) - | (u32::from(cpu_model.model) << 4) - | u32::from(cpu_model.stepping) - } -} - -impl PartialOrd for CpuModel { - fn partial_cmp(&self, other: &Self) -> Option { - Some(u32::from(self).cmp(&u32::from(other))) - } -} - -impl Ord for CpuModel { - fn cmp(&self, other: &Self) -> Ordering { - u32::from(self).cmp(&u32::from(other)) - } -} - #[cfg(test)] mod tests { use super::*; - const SKYLAKE: CpuModel = CpuModel { - extended_family: 0, - extended_model: 5, - family: 6, - model: 5, - stepping: 4, - }; - - const CASCADE_LAKE: CpuModel = CpuModel { - extended_family: 0, - extended_model: 5, - family: 6, - model: 5, - stepping: 7, - }; - #[test] fn cpu_model_from() { let skylake_eax = 0x00050654; - assert_eq!(u32::from(&SKYLAKE), skylake_eax); - assert_eq!(CpuModel::from(&skylake_eax), SKYLAKE); - } + assert_eq!(CpuModel::from(&skylake_eax), SKYLAKE_FMS); - #[test] - fn cpu_model_ord() { - assert_eq!(SKYLAKE, SKYLAKE); - assert!(SKYLAKE < CASCADE_LAKE); - assert!(CASCADE_LAKE > SKYLAKE); + let cascade_lake_eax = 0x00050657; + assert_eq!(CpuModel::from(&cascade_lake_eax), CASCADE_LAKE_FMS); + + let ice_lake_eax = 0x000606a6; + assert_eq!(CpuModel::from(&ice_lake_eax), ICE_LAKE_FMS); + + let milan_eax = 0x00a00f11; + assert_eq!(CpuModel::from(&milan_eax), MILAN_FMS); } } diff --git a/src/vmm/src/arch/x86_64/vcpu.rs b/src/vmm/src/arch/x86_64/vcpu.rs index 6c07720b573..b46d8e07b59 100644 --- a/src/vmm/src/arch/x86_64/vcpu.rs +++ b/src/vmm/src/arch/x86_64/vcpu.rs @@ -832,17 +832,6 @@ mod tests { (kvm, vm, vcpu) } - fn is_at_least_cascade_lake() -> bool { - CpuModel::get_cpu_model() - >= (CpuModel { - extended_family: 0, - extended_model: 5, - family: 6, - model: 5, - stepping: 7, - }) - } - fn create_vcpu_config( kvm: &Kvm, vcpu: &KvmVcpu, @@ -915,16 +904,33 @@ mod tests { // Test configure while using the T2S template. let t2a_res = try_configure(&kvm, &mut vcpu, StaticCpuTemplate::T2A); + let cpu_model = CpuModel::get_cpu_model(); match &cpuid::common::get_vendor_id_from_host().unwrap() { cpuid::VENDOR_ID_INTEL => { - assert!(t2_res); - assert!(c3_res); - assert!(t2s_res); - if is_at_least_cascade_lake() { - assert!(t2cl_res); - } else { - assert!(!t2cl_res); - } + assert_eq!( + t2_res, + StaticCpuTemplate::T2 + .get_supported_cpu_models() + .contains(&cpu_model) + ); + assert_eq!( + c3_res, + StaticCpuTemplate::C3 + .get_supported_cpu_models() + .contains(&cpu_model) + ); + assert_eq!( + t2s_res, + StaticCpuTemplate::T2S + .get_supported_cpu_models() + .contains(&cpu_model) + ); + assert_eq!( + t2cl_res, + StaticCpuTemplate::T2CL + .get_supported_cpu_models() + .contains(&cpu_model) + ); assert!(!t2a_res); } cpuid::VENDOR_ID_AMD => { @@ -932,7 +938,12 @@ mod tests { assert!(!c3_res); assert!(!t2s_res); assert!(!t2cl_res); - assert!(t2a_res); + assert_eq!( + t2a_res, + StaticCpuTemplate::T2A + .get_supported_cpu_models() + .contains(&cpu_model) + ); } _ => { assert!(!t2_res); diff --git a/src/vmm/src/cpu_config/test_utils.rs b/src/vmm/src/cpu_config/test_utils.rs index 197c0c62cf6..7ae43114946 100644 --- a/src/vmm/src/cpu_config/test_utils.rs +++ b/src/vmm/src/cpu_config/test_utils.rs @@ -9,7 +9,7 @@ use crate::cpu_config::templates::CustomCpuTemplate; pub fn get_json_template(filename: &str) -> CustomCpuTemplate { let json_path = [ env!("CARGO_MANIFEST_DIR"), - "../../tests/data/static_cpu_templates", + "../../tests/data/custom_cpu_templates", filename, ] .iter() diff --git a/src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs b/src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs index 15ba76abbe4..0d8917a4a5e 100644 --- a/src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs +++ b/src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs @@ -8,13 +8,13 @@ use std::borrow::Cow; use serde::de::Error as SerdeError; use serde::{Deserialize, Deserializer, Serialize, Serializer}; -use crate::arch::x86_64::cpu_model::CpuModel; +use crate::arch::x86_64::cpu_model::{CpuModel, SKYLAKE_FMS}; use crate::cpu_config::templates::{ CpuTemplateType, GetCpuTemplate, GetCpuTemplateError, KvmCapability, RegisterValueFilter, }; use crate::cpu_config::templates_serde::*; +use crate::cpu_config::x86_64::cpuid::KvmCpuidFlags; use crate::cpu_config::x86_64::cpuid::common::get_vendor_id_from_host; -use crate::cpu_config::x86_64::cpuid::{KvmCpuidFlags, VENDOR_ID_AMD, VENDOR_ID_INTEL}; use crate::cpu_config::x86_64::static_cpu_templates::{StaticCpuTemplate, c3, t2, t2a, t2cl, t2s}; use crate::logger::warn; @@ -26,13 +26,25 @@ impl GetCpuTemplate for Option { Some(template_type) => match template_type { CpuTemplateType::Custom(template) => Ok(Cow::Borrowed(template)), CpuTemplateType::Static(template) => { - let vendor_id = get_vendor_id_from_host().map_err(GetCpuVendor)?; + // Return early for `None` due to no valid vendor and CPU models. + if template == &StaticCpuTemplate::None { + return Err(InvalidStaticCpuTemplate(StaticCpuTemplate::None)); + } + + if &get_vendor_id_from_host().map_err(GetCpuVendor)? + != template.get_supported_vendor() + { + return Err(CpuVendorMismatched); + } + + let cpu_model = CpuModel::get_cpu_model(); + if !template.get_supported_cpu_models().contains(&cpu_model) { + return Err(InvalidCpuModel); + } + match template { StaticCpuTemplate::C3 => { - if &vendor_id != VENDOR_ID_INTEL { - return Err(CpuVendorMismatched); - } - if !CpuModel::get_cpu_model().is_at_least_cascade_lake() { + if cpu_model == SKYLAKE_FMS { warn!( "On processors that do not enumerate FBSDP_NO, PSDP_NO and \ SBDR_SSDP_NO on IA32_ARCH_CAPABILITIES MSR, the guest kernel \ @@ -42,35 +54,11 @@ impl GetCpuTemplate for Option { } Ok(Cow::Owned(c3::c3())) } - StaticCpuTemplate::T2 => { - if &vendor_id != VENDOR_ID_INTEL { - return Err(CpuVendorMismatched); - } - Ok(Cow::Owned(t2::t2())) - } - StaticCpuTemplate::T2S => { - if &vendor_id != VENDOR_ID_INTEL { - return Err(CpuVendorMismatched); - } - Ok(Cow::Owned(t2s::t2s())) - } - StaticCpuTemplate::T2CL => { - if &vendor_id != VENDOR_ID_INTEL { - return Err(CpuVendorMismatched); - } else if !CpuModel::get_cpu_model().is_at_least_cascade_lake() { - return Err(InvalidCpuModel); - } - Ok(Cow::Owned(t2cl::t2cl())) - } - StaticCpuTemplate::T2A => { - if &vendor_id != VENDOR_ID_AMD { - return Err(CpuVendorMismatched); - } - Ok(Cow::Owned(t2a::t2a())) - } - StaticCpuTemplate::None => { - Err(InvalidStaticCpuTemplate(StaticCpuTemplate::None)) - } + StaticCpuTemplate::T2 => Ok(Cow::Owned(t2::t2())), + StaticCpuTemplate::T2S => Ok(Cow::Owned(t2s::t2s())), + StaticCpuTemplate::T2CL => Ok(Cow::Owned(t2cl::t2cl())), + StaticCpuTemplate::T2A => Ok(Cow::Owned(t2a::t2a())), + StaticCpuTemplate::None => unreachable!(), // Handled earlier } } }, @@ -230,13 +218,25 @@ mod tests { #[test] fn test_get_cpu_template_with_c3_static_template() { // Test `get_cpu_template()` when C3 static CPU template is specified. The owned - // `CustomCpuTemplate` should be returned if CPU vendor is Intel. Otherwise, it should fail. - let cpu_template = Some(CpuTemplateType::Static(StaticCpuTemplate::C3)); - if &get_vendor_id_from_host().unwrap() == VENDOR_ID_INTEL { - assert_eq!( - cpu_template.get_cpu_template().unwrap(), - Cow::Owned(c3::c3()) - ); + // `CustomCpuTemplate` should be returned if CPU vendor is Intel and the CPU model is + // supported. Otherwise, it should fail. + let c3 = StaticCpuTemplate::C3; + let cpu_template = Some(CpuTemplateType::Static(c3)); + if &get_vendor_id_from_host().unwrap() == c3.get_supported_vendor() { + if c3 + .get_supported_cpu_models() + .contains(&CpuModel::get_cpu_model()) + { + assert_eq!( + cpu_template.get_cpu_template().unwrap(), + Cow::Owned(c3::c3()) + ); + } else { + assert_eq!( + cpu_template.get_cpu_template().unwrap_err(), + GetCpuTemplateError::InvalidCpuModel, + ); + } } else { assert_eq!( cpu_template.get_cpu_template().unwrap_err(), @@ -248,13 +248,25 @@ mod tests { #[test] fn test_get_cpu_template_with_t2_static_template() { // Test `get_cpu_template()` when T2 static CPU template is specified. The owned - // `CustomCpuTemplate` should be returned if CPU vendor is Intel. Otherwise, it should fail. - let cpu_template = Some(CpuTemplateType::Static(StaticCpuTemplate::T2)); - if &get_vendor_id_from_host().unwrap() == VENDOR_ID_INTEL { - assert_eq!( - cpu_template.get_cpu_template().unwrap(), - Cow::Owned(t2::t2()) - ); + // `CustomCpuTemplate` should be returned if CPU vendor is Intel and the CPU model is + // supported. Otherwise, it should fail. + let t2 = StaticCpuTemplate::T2; + let cpu_template = Some(CpuTemplateType::Static(t2)); + if &get_vendor_id_from_host().unwrap() == t2.get_supported_vendor() { + if t2 + .get_supported_cpu_models() + .contains(&CpuModel::get_cpu_model()) + { + assert_eq!( + cpu_template.get_cpu_template().unwrap(), + Cow::Owned(t2::t2()) + ); + } else { + assert_eq!( + cpu_template.get_cpu_template().unwrap_err(), + GetCpuTemplateError::InvalidCpuModel, + ); + } } else { assert_eq!( cpu_template.get_cpu_template().unwrap_err(), @@ -266,13 +278,25 @@ mod tests { #[test] fn test_get_cpu_template_with_t2s_static_template() { // Test `get_cpu_template()` when T2S static CPU template is specified. The owned - // `CustomCpuTemplate` should be returned if CPU vendor is Intel. Otherwise, it should fail. - let cpu_template = Some(CpuTemplateType::Static(StaticCpuTemplate::T2S)); - if &get_vendor_id_from_host().unwrap() == VENDOR_ID_INTEL { - assert_eq!( - cpu_template.get_cpu_template().unwrap(), - Cow::Owned(t2s::t2s()) - ); + // `CustomCpuTemplate` should be returned if CPU vendor is Intel and the CPU model is + // supported. Otherwise, it should fail. + let t2s = StaticCpuTemplate::T2S; + let cpu_template = Some(CpuTemplateType::Static(t2s)); + if &get_vendor_id_from_host().unwrap() == t2s.get_supported_vendor() { + if t2s + .get_supported_cpu_models() + .contains(&CpuModel::get_cpu_model()) + { + assert_eq!( + cpu_template.get_cpu_template().unwrap(), + Cow::Owned(t2s::t2s()) + ); + } else { + assert_eq!( + cpu_template.get_cpu_template().unwrap_err(), + GetCpuTemplateError::InvalidCpuModel, + ); + } } else { assert_eq!( cpu_template.get_cpu_template().unwrap_err(), @@ -299,10 +323,15 @@ mod tests { #[test] fn test_get_cpu_template_with_t2cl_static_template() { // Test `get_cpu_template()` when T2CL static CPU template is specified. The owned - // `CustomCpuTemplate` should be returned if CPU vendor is Intel. Otherwise, it should fail. - let cpu_template = Some(CpuTemplateType::Static(StaticCpuTemplate::T2CL)); - if &get_vendor_id_from_host().unwrap() == VENDOR_ID_INTEL { - if CpuModel::get_cpu_model().is_at_least_cascade_lake() { + // `CustomCpuTemplate` should be returned if CPU vendor is Intel and the CPU model is + // supported. Otherwise, it should fail. + let t2cl = StaticCpuTemplate::T2CL; + let cpu_template = Some(CpuTemplateType::Static(t2cl)); + if &get_vendor_id_from_host().unwrap() == t2cl.get_supported_vendor() { + if t2cl + .get_supported_cpu_models() + .contains(&CpuModel::get_cpu_model()) + { assert_eq!( cpu_template.get_cpu_template().unwrap(), Cow::Owned(t2cl::t2cl()) @@ -311,7 +340,7 @@ mod tests { assert_eq!( cpu_template.get_cpu_template().unwrap_err(), GetCpuTemplateError::InvalidCpuModel, - ) + ); } } else { assert_eq!( @@ -325,12 +354,23 @@ mod tests { fn test_get_cpu_template_with_t2a_static_template() { // Test `get_cpu_template()` when T2A static CPU template is specified. The owned // `CustomCpuTemplate` should be returned if CPU vendor is AMD. Otherwise it should fail. - let cpu_template = Some(CpuTemplateType::Static(StaticCpuTemplate::T2A)); - if &get_vendor_id_from_host().unwrap() == VENDOR_ID_AMD { - assert_eq!( - cpu_template.get_cpu_template().unwrap(), - Cow::Owned(t2a::t2a()) - ); + let t2a = StaticCpuTemplate::T2A; + let cpu_template = Some(CpuTemplateType::Static(t2a)); + if &get_vendor_id_from_host().unwrap() == t2a.get_supported_vendor() { + if t2a + .get_supported_cpu_models() + .contains(&CpuModel::get_cpu_model()) + { + assert_eq!( + cpu_template.get_cpu_template().unwrap(), + Cow::Owned(t2a::t2a()) + ); + } else { + assert_eq!( + cpu_template.get_cpu_template().unwrap_err(), + GetCpuTemplateError::InvalidCpuModel, + ); + } } else { assert_eq!( cpu_template.get_cpu_template().unwrap_err(), diff --git a/src/vmm/src/cpu_config/x86_64/static_cpu_templates/mod.rs b/src/vmm/src/cpu_config/x86_64/static_cpu_templates/mod.rs index c3b2e3d49b4..a978be8fd16 100644 --- a/src/vmm/src/cpu_config/x86_64/static_cpu_templates/mod.rs +++ b/src/vmm/src/cpu_config/x86_64/static_cpu_templates/mod.rs @@ -4,6 +4,11 @@ use derive_more::Display; use serde::{Deserialize, Serialize}; +use crate::arch::x86_64::cpu_model::{ + CASCADE_LAKE_FMS, CpuModel, ICE_LAKE_FMS, MILAN_FMS, SKYLAKE_FMS, +}; +use crate::cpu_config::x86_64::cpuid::{VENDOR_ID_AMD, VENDOR_ID_INTEL}; + /// Module with C3 CPU template for x86_64 pub mod c3; /// Module with T2 CPU template for x86_64 @@ -45,6 +50,30 @@ impl StaticCpuTemplate { pub fn is_none(&self) -> bool { self == &StaticCpuTemplate::None } + + /// Return the supported vendor for the CPU template. + pub fn get_supported_vendor(&self) -> &'static [u8; 12] { + match self { + StaticCpuTemplate::C3 => VENDOR_ID_INTEL, + StaticCpuTemplate::T2 => VENDOR_ID_INTEL, + StaticCpuTemplate::T2S => VENDOR_ID_INTEL, + StaticCpuTemplate::T2CL => VENDOR_ID_INTEL, + StaticCpuTemplate::T2A => VENDOR_ID_AMD, + StaticCpuTemplate::None => unreachable!(), // Should be handled in advance + } + } + + /// Return supported CPU models for the CPU template. + pub fn get_supported_cpu_models(&self) -> &'static [CpuModel] { + match self { + StaticCpuTemplate::C3 => &[SKYLAKE_FMS, CASCADE_LAKE_FMS, ICE_LAKE_FMS], + StaticCpuTemplate::T2 => &[SKYLAKE_FMS, CASCADE_LAKE_FMS, ICE_LAKE_FMS], + StaticCpuTemplate::T2S => &[SKYLAKE_FMS, CASCADE_LAKE_FMS], + StaticCpuTemplate::T2CL => &[CASCADE_LAKE_FMS, ICE_LAKE_FMS], + StaticCpuTemplate::T2A => &[MILAN_FMS], + StaticCpuTemplate::None => unreachable!(), // Should be handled in advance + } + } } #[cfg(test)] diff --git a/tests/data/static_cpu_templates/aarch64_with_sve_and_pac.json b/tests/data/custom_cpu_templates/aarch64_with_sve_and_pac.json similarity index 100% rename from tests/data/static_cpu_templates/aarch64_with_sve_and_pac.json rename to tests/data/custom_cpu_templates/aarch64_with_sve_and_pac.json diff --git a/tests/data/static_cpu_templates/c3.json b/tests/data/custom_cpu_templates/c3.json similarity index 100% rename from tests/data/static_cpu_templates/c3.json rename to tests/data/custom_cpu_templates/c3.json diff --git a/tests/data/static_cpu_templates/t2.json b/tests/data/custom_cpu_templates/t2.json similarity index 100% rename from tests/data/static_cpu_templates/t2.json rename to tests/data/custom_cpu_templates/t2.json diff --git a/tests/data/static_cpu_templates/t2a.json b/tests/data/custom_cpu_templates/t2a.json similarity index 100% rename from tests/data/static_cpu_templates/t2a.json rename to tests/data/custom_cpu_templates/t2a.json diff --git a/tests/data/static_cpu_templates/t2cl.json b/tests/data/custom_cpu_templates/t2cl.json similarity index 100% rename from tests/data/static_cpu_templates/t2cl.json rename to tests/data/custom_cpu_templates/t2cl.json diff --git a/tests/data/static_cpu_templates/t2s.json b/tests/data/custom_cpu_templates/t2s.json similarity index 100% rename from tests/data/static_cpu_templates/t2s.json rename to tests/data/custom_cpu_templates/t2s.json diff --git a/tests/data/static_cpu_templates/v1n1.json b/tests/data/custom_cpu_templates/v1n1.json similarity index 100% rename from tests/data/static_cpu_templates/v1n1.json rename to tests/data/custom_cpu_templates/v1n1.json diff --git a/tests/data/msr/msr_list_T2A_AMD_GENOA_5.10host_5.10guest.csv b/tests/data/msr/msr_list_T2A_AMD_GENOA_5.10host_5.10guest.csv deleted file mode 100644 index 82f8d2673d7..00000000000 --- a/tests/data/msr/msr_list_T2A_AMD_GENOA_5.10host_5.10guest.csv +++ /dev/null @@ -1,298 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x86e8ca1e -0x11,0x24a1008 -0x12,0x24a2001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3b,0x0 -0x48,0x0 -0x8b,0x1000065 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0xfffffe0000003000 -0x176,0xffffffff81a01510 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x150b49126 -0x802,0x0 -0x803,0x50014 -0x808,0x10 -0x80a,0x10 -0x80d,0x1 -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x830,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x400 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83e,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81a00080 -0xc0000083,0xffffffff81a015c0 -0xc0000084,0x47700 -0xc0000100,0x7fbe30c03740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010114,0x0 -0xc0010117,0x0 -0xc001011f,0x0 -0xc0010131,0x0 -0xc0010140,0x4 -0xc0010141,0x0 -0xc0010200,0x0 -0xc0010201,0x0 -0xc0010202,0x0 -0xc0010203,0x0 -0xc0010204,0x0 -0xc0010205,0x0 -0xc0010206,0x0 -0xc0010207,0x0 -0xc0010208,0x0 -0xc0010209,0x0 -0xc001020a,0x0 -0xc001020b,0xffff -0xc0011021,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc0011029,0x2 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2A_AMD_GENOA_5.10host_6.1guest.csv b/tests/data/msr/msr_list_T2A_AMD_GENOA_5.10host_6.1guest.csv deleted file mode 100644 index cbb1af0b3ac..00000000000 --- a/tests/data/msr/msr_list_T2A_AMD_GENOA_5.10host_6.1guest.csv +++ /dev/null @@ -1,298 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x7cc4d24c -0x11,0x25cb008 -0x12,0x25cc001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3b,0x0 -0x48,0x0 -0x8b,0x1000065 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0xfffffe0000003000 -0x176,0xffffffff81a01620 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x13998e6da -0x802,0x0 -0x803,0x50014 -0x808,0x10 -0x80a,0x10 -0x80d,0x1 -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x830,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x400 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83e,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81a00080 -0xc0000083,0xffffffff81a016e0 -0xc0000084,0x257fd5 -0xc0000100,0x7f2345db1740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010114,0x0 -0xc0010117,0x0 -0xc001011f,0x0 -0xc0010131,0x0 -0xc0010140,0x4 -0xc0010141,0x0 -0xc0010200,0x0 -0xc0010201,0x0 -0xc0010202,0x0 -0xc0010203,0x0 -0xc0010204,0x0 -0xc0010205,0x0 -0xc0010206,0x0 -0xc0010207,0x0 -0xc0010208,0x0 -0xc0010209,0x0 -0xc001020a,0x0 -0xc001020b,0xffff -0xc0011021,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc0011029,0x2 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2A_AMD_GENOA_6.1host_5.10guest.csv b/tests/data/msr/msr_list_T2A_AMD_GENOA_6.1host_5.10guest.csv deleted file mode 100644 index b3015830e3f..00000000000 --- a/tests/data/msr/msr_list_T2A_AMD_GENOA_6.1host_5.10guest.csv +++ /dev/null @@ -1,300 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x916c8f40 -0x11,0x24a1008 -0x12,0x24a2001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3b,0x0 -0x48,0x0 -0x8b,0x1000065 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0x3000 -0x176,0x81a01510 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x13b260b8c -0x802,0x0 -0x803,0x50014 -0x808,0x10 -0x80a,0x10 -0x80d,0x1 -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x830,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x400 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83e,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81a00080 -0xc0000083,0xffffffff81a015c0 -0xc0000084,0x47700 -0xc0000100,0x7f4e13140740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0000104,0x100000000 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010114,0x0 -0xc0010117,0x0 -0xc001011f,0x0 -0xc0010130,0x0 -0xc0010131,0x0 -0xc0010140,0x4 -0xc0010141,0x0 -0xc0010200,0x0 -0xc0010201,0x0 -0xc0010202,0x0 -0xc0010203,0x0 -0xc0010204,0x0 -0xc0010205,0x0 -0xc0010206,0x0 -0xc0010207,0x0 -0xc0010208,0x0 -0xc0010209,0x0 -0xc001020a,0x0 -0xc001020b,0xffff -0xc0011021,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc0011029,0x2 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2A_AMD_GENOA_6.1host_6.1guest.csv b/tests/data/msr/msr_list_T2A_AMD_GENOA_6.1host_6.1guest.csv deleted file mode 100644 index 59606121fda..00000000000 --- a/tests/data/msr/msr_list_T2A_AMD_GENOA_6.1host_6.1guest.csv +++ /dev/null @@ -1,300 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x7bd49b6c -0x11,0x25cb008 -0x12,0x25cc001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3b,0x0 -0x48,0x0 -0x8b,0x1000065 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0x3000 -0x176,0x81a01620 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x137e39322 -0x802,0x0 -0x803,0x50014 -0x808,0x10 -0x80a,0x10 -0x80d,0x1 -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x830,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x400 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83e,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81a00080 -0xc0000083,0xffffffff81a016e0 -0xc0000084,0x257fd5 -0xc0000100,0x7f7c57cd9740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0000104,0x100000000 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010114,0x0 -0xc0010117,0x0 -0xc001011f,0x0 -0xc0010130,0x0 -0xc0010131,0x0 -0xc0010140,0x4 -0xc0010141,0x0 -0xc0010200,0x0 -0xc0010201,0x0 -0xc0010202,0x0 -0xc0010203,0x0 -0xc0010204,0x0 -0xc0010205,0x0 -0xc0010206,0x0 -0xc0010207,0x0 -0xc0010208,0x0 -0xc0010209,0x0 -0xc001020a,0x0 -0xc001020b,0xffff -0xc0011021,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc0011029,0x2 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_5.10host_5.10guest.csv b/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_5.10host_5.10guest.csv deleted file mode 100644 index ca88204f029..00000000000 --- a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_5.10host_5.10guest.csv +++ /dev/null @@ -1,508 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x11724c8da -0x11,0x2502008 -0x12,0x2503001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3a,0x1 -0x3b,0x0 -0x48,0x1 -0x8b,0x100000000 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x10a,0xc080c4c -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0xfffffe0000003000 -0x176,0xffffffff81601450 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x29027fb12 -0x800,0x0 -0x801,0x0 -0x802,0x0 -0x803,0x50014 -0x804,0x0 -0x805,0x0 -0x806,0x0 -0x807,0x0 -0x808,0x10 -0x809,0x0 -0x80a,0x10 -0x80b,0x0 -0x80c,0x0 -0x80d,0x1 -0x80e,0xffffffff -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x829,0x0 -0x82a,0x0 -0x82b,0x0 -0x82c,0x0 -0x82d,0x0 -0x82e,0x0 -0x82f,0x0 -0x830,0x0 -0x831,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x10000 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83a,0x0 -0x83b,0x0 -0x83c,0x0 -0x83d,0x0 -0x83e,0x0 -0x83f,0x0 -0x840,0x0 -0x841,0x0 -0x842,0x0 -0x843,0x0 -0x844,0x0 -0x845,0x0 -0x846,0x0 -0x847,0x0 -0x848,0x0 -0x849,0x0 -0x84a,0x0 -0x84b,0x0 -0x84c,0x0 -0x84d,0x0 -0x84e,0x0 -0x84f,0x0 -0x850,0x0 -0x851,0x0 -0x852,0x0 -0x853,0x0 -0x854,0x0 -0x855,0x0 -0x856,0x0 -0x857,0x0 -0x858,0x0 -0x859,0x0 -0x85a,0x0 -0x85b,0x0 -0x85c,0x0 -0x85d,0x0 -0x85e,0x0 -0x85f,0x0 -0x860,0x0 -0x861,0x0 -0x862,0x0 -0x863,0x0 -0x864,0x0 -0x865,0x0 -0x866,0x0 -0x867,0x0 -0x868,0x0 -0x869,0x0 -0x86a,0x0 -0x86b,0x0 -0x86c,0x0 -0x86d,0x0 -0x86e,0x0 -0x86f,0x0 -0x870,0x0 -0x871,0x0 -0x872,0x0 -0x873,0x0 -0x874,0x0 -0x875,0x0 -0x876,0x0 -0x877,0x0 -0x878,0x0 -0x879,0x0 -0x87a,0x0 -0x87b,0x0 -0x87c,0x0 -0x87d,0x0 -0x87e,0x0 -0x87f,0x0 -0x880,0x0 -0x881,0x0 -0x882,0x0 -0x883,0x0 -0x884,0x0 -0x885,0x0 -0x886,0x0 -0x887,0x0 -0x888,0x0 -0x889,0x0 -0x88a,0x0 -0x88b,0x0 -0x88c,0x0 -0x88d,0x0 -0x88e,0x0 -0x88f,0x0 -0x890,0x0 -0x891,0x0 -0x892,0x0 -0x893,0x0 -0x894,0x0 -0x895,0x0 -0x896,0x0 -0x897,0x0 -0x898,0x0 -0x899,0x0 -0x89a,0x0 -0x89b,0x0 -0x89c,0x0 -0x89d,0x0 -0x89e,0x0 -0x89f,0x0 -0x8a0,0x0 -0x8a1,0x0 -0x8a2,0x0 -0x8a3,0x0 -0x8a4,0x0 -0x8a5,0x0 -0x8a6,0x0 -0x8a7,0x0 -0x8a8,0x0 -0x8a9,0x0 -0x8aa,0x0 -0x8ab,0x0 -0x8ac,0x0 -0x8ad,0x0 -0x8ae,0x0 -0x8af,0x0 -0x8b0,0x0 -0x8b1,0x0 -0x8b2,0x0 -0x8b3,0x0 -0x8b4,0x0 -0x8b5,0x0 -0x8b6,0x0 -0x8b7,0x0 -0x8b8,0x0 -0x8b9,0x0 -0x8ba,0x0 -0x8bb,0x0 -0x8bc,0x0 -0x8bd,0x0 -0x8be,0x0 -0x8bf,0x0 -0x8c0,0x0 -0x8c1,0x0 -0x8c2,0x0 -0x8c3,0x0 -0x8c4,0x0 -0x8c5,0x0 -0x8c6,0x0 -0x8c7,0x0 -0x8c8,0x0 -0x8c9,0x0 -0x8ca,0x0 -0x8cb,0x0 -0x8cc,0x0 -0x8cd,0x0 -0x8ce,0x0 -0x8cf,0x0 -0x8d0,0x0 -0x8d1,0x0 -0x8d2,0x0 -0x8d3,0x0 -0x8d4,0x0 -0x8d5,0x0 -0x8d6,0x0 -0x8d7,0x0 -0x8d8,0x0 -0x8d9,0x0 -0x8da,0x0 -0x8db,0x0 -0x8dc,0x0 -0x8dd,0x0 -0x8de,0x0 -0x8df,0x0 -0x8e0,0x0 -0x8e1,0x0 -0x8e2,0x0 -0x8e3,0x0 -0x8e4,0x0 -0x8e5,0x0 -0x8e6,0x0 -0x8e7,0x0 -0x8e8,0x0 -0x8e9,0x0 -0x8ea,0x0 -0x8eb,0x0 -0x8ec,0x0 -0x8ed,0x0 -0x8ee,0x0 -0x8ef,0x0 -0x8f0,0x0 -0x8f1,0x0 -0x8f2,0x0 -0x8f3,0x0 -0x8f4,0x0 -0x8f5,0x0 -0x8f6,0x0 -0x8f7,0x0 -0x8f8,0x0 -0x8f9,0x0 -0x8fa,0x0 -0x8fb,0x0 -0x8fc,0x0 -0x8fd,0x0 -0x8fe,0x0 -0x8ff,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81600040 -0xc0000083,0xffffffff81601500 -0xc0000084,0x47700 -0xc0000100,0x7fea39cd1740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010117,0x0 -0xc0010200,0x0 -0xc0010201,0x0 -0xc0010202,0x0 -0xc0010203,0x0 -0xc0010204,0x0 -0xc0010205,0x0 -0xc0010206,0x0 -0xc0010207,0x0 -0xc0010208,0x0 -0xc0010209,0x0 -0xc001020a,0x0 -0xc001020b,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_5.10host_6.1guest.csv b/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_5.10host_6.1guest.csv deleted file mode 100644 index 41446970724..00000000000 --- a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_5.10host_6.1guest.csv +++ /dev/null @@ -1,508 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x11724c8da -0x11,0x2502008 -0x12,0x2503001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3a,0x1 -0x3b,0x0 -0x48,0x1 -0x8b,0x100000000 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x10a,0xc080c4c -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0xfffffe0000003000 -0x176,0xffffffff81601450 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x29027fb12 -0x800,0x0 -0x801,0x0 -0x802,0x0 -0x803,0x50014 -0x804,0x0 -0x805,0x0 -0x806,0x0 -0x807,0x0 -0x808,0x10 -0x809,0x0 -0x80a,0x10 -0x80b,0x0 -0x80c,0x0 -0x80d,0x1 -0x80e,0xffffffff -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x829,0x0 -0x82a,0x0 -0x82b,0x0 -0x82c,0x0 -0x82d,0x0 -0x82e,0x0 -0x82f,0x0 -0x830,0x0 -0x831,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x10000 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83a,0x0 -0x83b,0x0 -0x83c,0x0 -0x83d,0x0 -0x83e,0x0 -0x83f,0x0 -0x840,0x0 -0x841,0x0 -0x842,0x0 -0x843,0x0 -0x844,0x0 -0x845,0x0 -0x846,0x0 -0x847,0x0 -0x848,0x0 -0x849,0x0 -0x84a,0x0 -0x84b,0x0 -0x84c,0x0 -0x84d,0x0 -0x84e,0x0 -0x84f,0x0 -0x850,0x0 -0x851,0x0 -0x852,0x0 -0x853,0x0 -0x854,0x0 -0x855,0x0 -0x856,0x0 -0x857,0x0 -0x858,0x0 -0x859,0x0 -0x85a,0x0 -0x85b,0x0 -0x85c,0x0 -0x85d,0x0 -0x85e,0x0 -0x85f,0x0 -0x860,0x0 -0x861,0x0 -0x862,0x0 -0x863,0x0 -0x864,0x0 -0x865,0x0 -0x866,0x0 -0x867,0x0 -0x868,0x0 -0x869,0x0 -0x86a,0x0 -0x86b,0x0 -0x86c,0x0 -0x86d,0x0 -0x86e,0x0 -0x86f,0x0 -0x870,0x0 -0x871,0x0 -0x872,0x0 -0x873,0x0 -0x874,0x0 -0x875,0x0 -0x876,0x0 -0x877,0x0 -0x878,0x0 -0x879,0x0 -0x87a,0x0 -0x87b,0x0 -0x87c,0x0 -0x87d,0x0 -0x87e,0x0 -0x87f,0x0 -0x880,0x0 -0x881,0x0 -0x882,0x0 -0x883,0x0 -0x884,0x0 -0x885,0x0 -0x886,0x0 -0x887,0x0 -0x888,0x0 -0x889,0x0 -0x88a,0x0 -0x88b,0x0 -0x88c,0x0 -0x88d,0x0 -0x88e,0x0 -0x88f,0x0 -0x890,0x0 -0x891,0x0 -0x892,0x0 -0x893,0x0 -0x894,0x0 -0x895,0x0 -0x896,0x0 -0x897,0x0 -0x898,0x0 -0x899,0x0 -0x89a,0x0 -0x89b,0x0 -0x89c,0x0 -0x89d,0x0 -0x89e,0x0 -0x89f,0x0 -0x8a0,0x0 -0x8a1,0x0 -0x8a2,0x0 -0x8a3,0x0 -0x8a4,0x0 -0x8a5,0x0 -0x8a6,0x0 -0x8a7,0x0 -0x8a8,0x0 -0x8a9,0x0 -0x8aa,0x0 -0x8ab,0x0 -0x8ac,0x0 -0x8ad,0x0 -0x8ae,0x0 -0x8af,0x0 -0x8b0,0x0 -0x8b1,0x0 -0x8b2,0x0 -0x8b3,0x0 -0x8b4,0x0 -0x8b5,0x0 -0x8b6,0x0 -0x8b7,0x0 -0x8b8,0x0 -0x8b9,0x0 -0x8ba,0x0 -0x8bb,0x0 -0x8bc,0x0 -0x8bd,0x0 -0x8be,0x0 -0x8bf,0x0 -0x8c0,0x0 -0x8c1,0x0 -0x8c2,0x0 -0x8c3,0x0 -0x8c4,0x0 -0x8c5,0x0 -0x8c6,0x0 -0x8c7,0x0 -0x8c8,0x0 -0x8c9,0x0 -0x8ca,0x0 -0x8cb,0x0 -0x8cc,0x0 -0x8cd,0x0 -0x8ce,0x0 -0x8cf,0x0 -0x8d0,0x0 -0x8d1,0x0 -0x8d2,0x0 -0x8d3,0x0 -0x8d4,0x0 -0x8d5,0x0 -0x8d6,0x0 -0x8d7,0x0 -0x8d8,0x0 -0x8d9,0x0 -0x8da,0x0 -0x8db,0x0 -0x8dc,0x0 -0x8dd,0x0 -0x8de,0x0 -0x8df,0x0 -0x8e0,0x0 -0x8e1,0x0 -0x8e2,0x0 -0x8e3,0x0 -0x8e4,0x0 -0x8e5,0x0 -0x8e6,0x0 -0x8e7,0x0 -0x8e8,0x0 -0x8e9,0x0 -0x8ea,0x0 -0x8eb,0x0 -0x8ec,0x0 -0x8ed,0x0 -0x8ee,0x0 -0x8ef,0x0 -0x8f0,0x0 -0x8f1,0x0 -0x8f2,0x0 -0x8f3,0x0 -0x8f4,0x0 -0x8f5,0x0 -0x8f6,0x0 -0x8f7,0x0 -0x8f8,0x0 -0x8f9,0x0 -0x8fa,0x0 -0x8fb,0x0 -0x8fc,0x0 -0x8fd,0x0 -0x8fe,0x0 -0x8ff,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81600040 -0xc0000083,0xffffffff81601500 -0xc0000084,0x257fd5 -0xc0000100,0x7fea39cd1740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010117,0x0 -0xc0010200,0x0 -0xc0010201,0x0 -0xc0010202,0x0 -0xc0010203,0x0 -0xc0010204,0x0 -0xc0010205,0x0 -0xc0010206,0x0 -0xc0010207,0x0 -0xc0010208,0x0 -0xc0010209,0x0 -0xc001020a,0x0 -0xc001020b,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_6.1host_5.10guest.csv b/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_6.1host_5.10guest.csv deleted file mode 100644 index b4c4280fd88..00000000000 --- a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_6.1host_5.10guest.csv +++ /dev/null @@ -1,496 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x1198ebe02 -0x11,0x2502008 -0x12,0x2503001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3a,0x1 -0x3b,0x0 -0x48,0x1 -0x8b,0x100000000 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x10a,0xc080c4c -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0xfffffe0000003000 -0x176,0xffffffff81601450 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x28fee0674 -0x800,0x0 -0x801,0x0 -0x802,0x0 -0x803,0x50014 -0x804,0x0 -0x805,0x0 -0x806,0x0 -0x807,0x0 -0x808,0x10 -0x809,0x0 -0x80a,0x10 -0x80b,0x0 -0x80c,0x0 -0x80d,0x1 -0x80e,0xffffffff -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x829,0x0 -0x82a,0x0 -0x82b,0x0 -0x82c,0x0 -0x82d,0x0 -0x82e,0x0 -0x82f,0x0 -0x830,0x0 -0x831,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x10000 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83a,0x0 -0x83b,0x0 -0x83c,0x0 -0x83d,0x0 -0x83e,0x0 -0x83f,0x0 -0x840,0x0 -0x841,0x0 -0x842,0x0 -0x843,0x0 -0x844,0x0 -0x845,0x0 -0x846,0x0 -0x847,0x0 -0x848,0x0 -0x849,0x0 -0x84a,0x0 -0x84b,0x0 -0x84c,0x0 -0x84d,0x0 -0x84e,0x0 -0x84f,0x0 -0x850,0x0 -0x851,0x0 -0x852,0x0 -0x853,0x0 -0x854,0x0 -0x855,0x0 -0x856,0x0 -0x857,0x0 -0x858,0x0 -0x859,0x0 -0x85a,0x0 -0x85b,0x0 -0x85c,0x0 -0x85d,0x0 -0x85e,0x0 -0x85f,0x0 -0x860,0x0 -0x861,0x0 -0x862,0x0 -0x863,0x0 -0x864,0x0 -0x865,0x0 -0x866,0x0 -0x867,0x0 -0x868,0x0 -0x869,0x0 -0x86a,0x0 -0x86b,0x0 -0x86c,0x0 -0x86d,0x0 -0x86e,0x0 -0x86f,0x0 -0x870,0x0 -0x871,0x0 -0x872,0x0 -0x873,0x0 -0x874,0x0 -0x875,0x0 -0x876,0x0 -0x877,0x0 -0x878,0x0 -0x879,0x0 -0x87a,0x0 -0x87b,0x0 -0x87c,0x0 -0x87d,0x0 -0x87e,0x0 -0x87f,0x0 -0x880,0x0 -0x881,0x0 -0x882,0x0 -0x883,0x0 -0x884,0x0 -0x885,0x0 -0x886,0x0 -0x887,0x0 -0x888,0x0 -0x889,0x0 -0x88a,0x0 -0x88b,0x0 -0x88c,0x0 -0x88d,0x0 -0x88e,0x0 -0x88f,0x0 -0x890,0x0 -0x891,0x0 -0x892,0x0 -0x893,0x0 -0x894,0x0 -0x895,0x0 -0x896,0x0 -0x897,0x0 -0x898,0x0 -0x899,0x0 -0x89a,0x0 -0x89b,0x0 -0x89c,0x0 -0x89d,0x0 -0x89e,0x0 -0x89f,0x0 -0x8a0,0x0 -0x8a1,0x0 -0x8a2,0x0 -0x8a3,0x0 -0x8a4,0x0 -0x8a5,0x0 -0x8a6,0x0 -0x8a7,0x0 -0x8a8,0x0 -0x8a9,0x0 -0x8aa,0x0 -0x8ab,0x0 -0x8ac,0x0 -0x8ad,0x0 -0x8ae,0x0 -0x8af,0x0 -0x8b0,0x0 -0x8b1,0x0 -0x8b2,0x0 -0x8b3,0x0 -0x8b4,0x0 -0x8b5,0x0 -0x8b6,0x0 -0x8b7,0x0 -0x8b8,0x0 -0x8b9,0x0 -0x8ba,0x0 -0x8bb,0x0 -0x8bc,0x0 -0x8bd,0x0 -0x8be,0x0 -0x8bf,0x0 -0x8c0,0x0 -0x8c1,0x0 -0x8c2,0x0 -0x8c3,0x0 -0x8c4,0x0 -0x8c5,0x0 -0x8c6,0x0 -0x8c7,0x0 -0x8c8,0x0 -0x8c9,0x0 -0x8ca,0x0 -0x8cb,0x0 -0x8cc,0x0 -0x8cd,0x0 -0x8ce,0x0 -0x8cf,0x0 -0x8d0,0x0 -0x8d1,0x0 -0x8d2,0x0 -0x8d3,0x0 -0x8d4,0x0 -0x8d5,0x0 -0x8d6,0x0 -0x8d7,0x0 -0x8d8,0x0 -0x8d9,0x0 -0x8da,0x0 -0x8db,0x0 -0x8dc,0x0 -0x8dd,0x0 -0x8de,0x0 -0x8df,0x0 -0x8e0,0x0 -0x8e1,0x0 -0x8e2,0x0 -0x8e3,0x0 -0x8e4,0x0 -0x8e5,0x0 -0x8e6,0x0 -0x8e7,0x0 -0x8e8,0x0 -0x8e9,0x0 -0x8ea,0x0 -0x8eb,0x0 -0x8ec,0x0 -0x8ed,0x0 -0x8ee,0x0 -0x8ef,0x0 -0x8f0,0x0 -0x8f1,0x0 -0x8f2,0x0 -0x8f3,0x0 -0x8f4,0x0 -0x8f5,0x0 -0x8f6,0x0 -0x8f7,0x0 -0x8f8,0x0 -0x8f9,0x0 -0x8fa,0x0 -0x8fb,0x0 -0x8fc,0x0 -0x8fd,0x0 -0x8fe,0x0 -0x8ff,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81600040 -0xc0000083,0xffffffff81601500 -0xc0000084,0x47700 -0xc0000100,0x7f1666205740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010117,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_6.1host_6.1guest.csv b/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_6.1host_6.1guest.csv deleted file mode 100644 index 44cb01c9b6f..00000000000 --- a/tests/data/msr/msr_list_T2S_INTEL_ICELAKE_6.1host_6.1guest.csv +++ /dev/null @@ -1,496 +0,0 @@ -MSR_ADDR,VALUE -0,0x0 -0x1,0x0 -0x10,0x1198ebe02 -0x11,0x2502008 -0x12,0x2503001 -0x17,0x0 -0x1b,0xfee00d00 -0x2a,0x0 -0x2c,0x1000000 -0x34,0x0 -0x3a,0x1 -0x3b,0x0 -0x48,0x1 -0x8b,0x100000000 -0xc1,0x0 -0xc2,0x0 -0xcd,0x3 -0xce,0x80000000 -0xfe,0x508 -0x10a,0xc080c4c -0x11e,0xbe702111 -0x140,0x0 -0x174,0x10 -0x175,0xfffffe0000003000 -0x176,0xffffffff81601450 -0x179,0x20 -0x17a,0x0 -0x186,0x0 -0x187,0x0 -0x198,0x400000003e8 -0x199,0x0 -0x1a0,0x1 -0x1d9,0x0 -0x1db,0x0 -0x1dc,0x0 -0x1dd,0x0 -0x1de,0x0 -0x1fc,0x0 -0x200,0x0 -0x201,0x0 -0x202,0x0 -0x203,0x0 -0x204,0x0 -0x205,0x0 -0x206,0x0 -0x207,0x0 -0x208,0x0 -0x209,0x0 -0x20a,0x0 -0x20b,0x0 -0x20c,0x0 -0x20d,0x0 -0x20e,0x0 -0x20f,0x0 -0x250,0x0 -0x258,0x0 -0x259,0x0 -0x268,0x0 -0x269,0x0 -0x26a,0x0 -0x26b,0x0 -0x26c,0x0 -0x26d,0x0 -0x26e,0x0 -0x26f,0x0 -0x277,0x7040600070406 -0x2ff,0x0 -0x400,0x0 -0x401,0x0 -0x402,0x0 -0x403,0x0 -0x404,0x0 -0x405,0x0 -0x406,0x0 -0x407,0x0 -0x408,0x0 -0x409,0x0 -0x40a,0x0 -0x40b,0x0 -0x40c,0x0 -0x40d,0x0 -0x40e,0x0 -0x40f,0x0 -0x410,0x0 -0x411,0x0 -0x412,0x0 -0x413,0x0 -0x414,0x0 -0x415,0x0 -0x416,0x0 -0x417,0x0 -0x418,0x0 -0x419,0x0 -0x41a,0x0 -0x41b,0x0 -0x41c,0x0 -0x41d,0x0 -0x41e,0x0 -0x41f,0x0 -0x420,0x0 -0x421,0x0 -0x422,0x0 -0x423,0x0 -0x424,0x0 -0x425,0x0 -0x426,0x0 -0x427,0x0 -0x428,0x0 -0x429,0x0 -0x42a,0x0 -0x42b,0x0 -0x42c,0x0 -0x42d,0x0 -0x42e,0x0 -0x42f,0x0 -0x430,0x0 -0x431,0x0 -0x432,0x0 -0x433,0x0 -0x434,0x0 -0x435,0x0 -0x436,0x0 -0x437,0x0 -0x438,0x0 -0x439,0x0 -0x43a,0x0 -0x43b,0x0 -0x43c,0x0 -0x43d,0x0 -0x43e,0x0 -0x43f,0x0 -0x440,0x0 -0x441,0x0 -0x442,0x0 -0x443,0x0 -0x444,0x0 -0x445,0x0 -0x446,0x0 -0x447,0x0 -0x448,0x0 -0x449,0x0 -0x44a,0x0 -0x44b,0x0 -0x44c,0x0 -0x44d,0x0 -0x44e,0x0 -0x44f,0x0 -0x450,0x0 -0x451,0x0 -0x452,0x0 -0x453,0x0 -0x454,0x0 -0x455,0x0 -0x456,0x0 -0x457,0x0 -0x458,0x0 -0x459,0x0 -0x45a,0x0 -0x45b,0x0 -0x45c,0x0 -0x45d,0x0 -0x45e,0x0 -0x45f,0x0 -0x460,0x0 -0x461,0x0 -0x462,0x0 -0x463,0x0 -0x464,0x0 -0x465,0x0 -0x466,0x0 -0x467,0x0 -0x468,0x0 -0x469,0x0 -0x46a,0x0 -0x46b,0x0 -0x46c,0x0 -0x46d,0x0 -0x46e,0x0 -0x46f,0x0 -0x470,0x0 -0x471,0x0 -0x472,0x0 -0x473,0x0 -0x474,0x0 -0x475,0x0 -0x476,0x0 -0x477,0x0 -0x478,0x0 -0x479,0x0 -0x47a,0x0 -0x47b,0x0 -0x47c,0x0 -0x47d,0x0 -0x47e,0x0 -0x47f,0x0 -0x606,0x0 -0x611,0x0 -0x619,0x0 -0x639,0x0 -0x641,0x0 -0x6e0,0x28fee0674 -0x800,0x0 -0x801,0x0 -0x802,0x0 -0x803,0x50014 -0x804,0x0 -0x805,0x0 -0x806,0x0 -0x807,0x0 -0x808,0x10 -0x809,0x0 -0x80a,0x10 -0x80b,0x0 -0x80c,0x0 -0x80d,0x1 -0x80e,0xffffffff -0x80f,0x1ff -0x810,0x0 -0x811,0x0 -0x812,0x0 -0x813,0x0 -0x814,0x0 -0x815,0x0 -0x816,0x0 -0x817,0x0 -0x818,0x0 -0x819,0x0 -0x81a,0x0 -0x81b,0x0 -0x81c,0x0 -0x81d,0x0 -0x81e,0x0 -0x81f,0x0 -0x820,0x0 -0x821,0x0 -0x822,0x0 -0x823,0x0 -0x824,0x0 -0x825,0x0 -0x826,0x0 -0x827,0x0 -0x828,0x0 -0x829,0x0 -0x82a,0x0 -0x82b,0x0 -0x82c,0x0 -0x82d,0x0 -0x82e,0x0 -0x82f,0x0 -0x830,0x0 -0x831,0x0 -0x832,0x400ec -0x833,0x10000 -0x834,0x10000 -0x835,0x10700 -0x836,0x400 -0x837,0xfe -0x838,0x0 -0x839,0x0 -0x83a,0x0 -0x83b,0x0 -0x83c,0x0 -0x83d,0x0 -0x83e,0x0 -0x83f,0x0 -0x840,0x0 -0x841,0x0 -0x842,0x0 -0x843,0x0 -0x844,0x0 -0x845,0x0 -0x846,0x0 -0x847,0x0 -0x848,0x0 -0x849,0x0 -0x84a,0x0 -0x84b,0x0 -0x84c,0x0 -0x84d,0x0 -0x84e,0x0 -0x84f,0x0 -0x850,0x0 -0x851,0x0 -0x852,0x0 -0x853,0x0 -0x854,0x0 -0x855,0x0 -0x856,0x0 -0x857,0x0 -0x858,0x0 -0x859,0x0 -0x85a,0x0 -0x85b,0x0 -0x85c,0x0 -0x85d,0x0 -0x85e,0x0 -0x85f,0x0 -0x860,0x0 -0x861,0x0 -0x862,0x0 -0x863,0x0 -0x864,0x0 -0x865,0x0 -0x866,0x0 -0x867,0x0 -0x868,0x0 -0x869,0x0 -0x86a,0x0 -0x86b,0x0 -0x86c,0x0 -0x86d,0x0 -0x86e,0x0 -0x86f,0x0 -0x870,0x0 -0x871,0x0 -0x872,0x0 -0x873,0x0 -0x874,0x0 -0x875,0x0 -0x876,0x0 -0x877,0x0 -0x878,0x0 -0x879,0x0 -0x87a,0x0 -0x87b,0x0 -0x87c,0x0 -0x87d,0x0 -0x87e,0x0 -0x87f,0x0 -0x880,0x0 -0x881,0x0 -0x882,0x0 -0x883,0x0 -0x884,0x0 -0x885,0x0 -0x886,0x0 -0x887,0x0 -0x888,0x0 -0x889,0x0 -0x88a,0x0 -0x88b,0x0 -0x88c,0x0 -0x88d,0x0 -0x88e,0x0 -0x88f,0x0 -0x890,0x0 -0x891,0x0 -0x892,0x0 -0x893,0x0 -0x894,0x0 -0x895,0x0 -0x896,0x0 -0x897,0x0 -0x898,0x0 -0x899,0x0 -0x89a,0x0 -0x89b,0x0 -0x89c,0x0 -0x89d,0x0 -0x89e,0x0 -0x89f,0x0 -0x8a0,0x0 -0x8a1,0x0 -0x8a2,0x0 -0x8a3,0x0 -0x8a4,0x0 -0x8a5,0x0 -0x8a6,0x0 -0x8a7,0x0 -0x8a8,0x0 -0x8a9,0x0 -0x8aa,0x0 -0x8ab,0x0 -0x8ac,0x0 -0x8ad,0x0 -0x8ae,0x0 -0x8af,0x0 -0x8b0,0x0 -0x8b1,0x0 -0x8b2,0x0 -0x8b3,0x0 -0x8b4,0x0 -0x8b5,0x0 -0x8b6,0x0 -0x8b7,0x0 -0x8b8,0x0 -0x8b9,0x0 -0x8ba,0x0 -0x8bb,0x0 -0x8bc,0x0 -0x8bd,0x0 -0x8be,0x0 -0x8bf,0x0 -0x8c0,0x0 -0x8c1,0x0 -0x8c2,0x0 -0x8c3,0x0 -0x8c4,0x0 -0x8c5,0x0 -0x8c6,0x0 -0x8c7,0x0 -0x8c8,0x0 -0x8c9,0x0 -0x8ca,0x0 -0x8cb,0x0 -0x8cc,0x0 -0x8cd,0x0 -0x8ce,0x0 -0x8cf,0x0 -0x8d0,0x0 -0x8d1,0x0 -0x8d2,0x0 -0x8d3,0x0 -0x8d4,0x0 -0x8d5,0x0 -0x8d6,0x0 -0x8d7,0x0 -0x8d8,0x0 -0x8d9,0x0 -0x8da,0x0 -0x8db,0x0 -0x8dc,0x0 -0x8dd,0x0 -0x8de,0x0 -0x8df,0x0 -0x8e0,0x0 -0x8e1,0x0 -0x8e2,0x0 -0x8e3,0x0 -0x8e4,0x0 -0x8e5,0x0 -0x8e6,0x0 -0x8e7,0x0 -0x8e8,0x0 -0x8e9,0x0 -0x8ea,0x0 -0x8eb,0x0 -0x8ec,0x0 -0x8ed,0x0 -0x8ee,0x0 -0x8ef,0x0 -0x8f0,0x0 -0x8f1,0x0 -0x8f2,0x0 -0x8f3,0x0 -0x8f4,0x0 -0x8f5,0x0 -0x8f6,0x0 -0x8f7,0x0 -0x8f8,0x0 -0x8f9,0x0 -0x8fa,0x0 -0x8fb,0x0 -0x8fc,0x0 -0x8fd,0x0 -0x8fe,0x0 -0x8ff,0x0 -0xc0000080,0xd01 -0xc0000081,0x23001000000000 -0xc0000082,0xffffffff81600040 -0xc0000083,0xffffffff81601500 -0xc0000084,0x257fd5 -0xc0000100,0x7f1666205740 -0xc0000101,0xffff88803ec00000 -0xc0000102,0x0 -0xc0000103,0x0 -0xc0010000,0x0 -0xc0010001,0x0 -0xc0010002,0x0 -0xc0010003,0x0 -0xc0010004,0x0 -0xc0010005,0x0 -0xc0010006,0x0 -0xc0010007,0x0 -0xc0010010,0x0 -0xc0010015,0x0 -0xc001001b,0x20000000 -0xc001001f,0x0 -0xc0010055,0x0 -0xc0010058,0x0 -0xc0010112,0x0 -0xc0010113,0x0 -0xc0010117,0x0 -0xc0011022,0x0 -0xc0011023,0x0 -0xc001102a,0x0 -0xc001102c,0x0 -0x400000000,0x0 -0x2000000000,0x0 -0x4000000000,0x0 -0x8000000000,0x0 -0x1000000000000,0x0 -0x3c000000000000,0x0 -0x80000000000000,0x0 -0x40000000000000,0x0 diff --git a/tests/framework/utils_cpu_templates.py b/tests/framework/utils_cpu_templates.py index 0d8f9cd843b..804fd99c755 100644 --- a/tests/framework/utils_cpu_templates.py +++ b/tests/framework/utils_cpu_templates.py @@ -25,12 +25,13 @@ def get_supported_cpu_templates(): """Return the list of static CPU templates supported by the platform.""" host_linux = global_props.host_linux_version_tpl match get_cpu_vendor(), global_props.cpu_codename: - # T2CL template is only supported on Cascade Lake and newer CPUs. case CpuVendor.INTEL, CpuModel.INTEL_SKYLAKE: return sorted(set(INTEL_TEMPLATES) - {"T2CL"}) - case CpuVendor.INTEL, _: + case CpuVendor.INTEL, CpuModel.INTEL_CASCADELAKE: return INTEL_TEMPLATES - case CpuVendor.AMD, _: + case CpuVendor.INTEL, CpuModel.INTEL_ICELAKE: + return sorted(set(INTEL_TEMPLATES) - {"T2S"}) + case CpuVendor.AMD, CpuModel.AMD_MILAN: return AMD_TEMPLATES case CpuVendor.ARM, CpuModel.ARM_NEOVERSE_V1 if host_linux >= (6, 1): return ARM_TEMPLATES @@ -45,12 +46,13 @@ def get_supported_custom_cpu_templates(): """Return the list of custom CPU templates supported by the platform.""" host_linux = global_props.host_linux_version_tpl match get_cpu_vendor(), global_props.cpu_codename: - # T2CL template is only supported on Cascade Lake and newer CPUs. case CpuVendor.INTEL, CpuModel.INTEL_SKYLAKE: return set(INTEL_TEMPLATES) - {"T2CL"} - case CpuVendor.INTEL, _: + case CpuVendor.INTEL, CpuModel.INTEL_CASCADELAKE: return INTEL_TEMPLATES - case CpuVendor.AMD, _: + case CpuVendor.INTEL, CpuModel.INTEL_ICELAKE: + return set(INTEL_TEMPLATES) - {"T2S"} + case CpuVendor.AMD, CpuModel.AMD_MILAN: return AMD_TEMPLATES case CpuVendor.ARM, CpuModel.ARM_NEOVERSE_N1 if host_linux >= (6, 1): return ["v1n1"] @@ -67,7 +69,7 @@ def get_supported_custom_cpu_templates(): def custom_cpu_templates_params(): """Return Custom CPU templates as pytest parameters""" for name in sorted(get_supported_custom_cpu_templates()): - tmpl = Path(f"./data/static_cpu_templates/{name.lower()}.json") + tmpl = Path(f"./data/custom_cpu_templates/{name.lower()}.json") yield pytest.param( {"name": name, "template": json.loads(tmpl.read_text("utf-8"))}, id="custom_" + name, diff --git a/tests/integration_tests/functional/test_api.py b/tests/integration_tests/functional/test_api.py index eb2cd1b608e..864c6d5eda9 100644 --- a/tests/integration_tests/functional/test_api.py +++ b/tests/integration_tests/functional/test_api.py @@ -18,6 +18,7 @@ import host_tools.network as net_tools from framework import utils, utils_cpuid from framework.utils import get_firecracker_version_from_toml +from framework.utils_cpu_templates import SUPPORTED_CPU_TEMPLATES MEM_LIMIT = 1000000000 @@ -393,21 +394,13 @@ def test_api_machine_config(uvm_plain): test_microvm.api.machine_config.patch(mem_size_mib=256) # Set the cpu template - if platform.machine() == "x86_64": - test_microvm.api.machine_config.patch(cpu_template="C3") - else: - # We test with "None" because this is the only option supported on - # all aarch64 instances. It still tests setting `cpu_template`, - # even though the values we set is "None". + if len(SUPPORTED_CPU_TEMPLATES) == 0: + # No static CPU templates are supported on this CPU. test_microvm.api.machine_config.patch(cpu_template="None") - - if utils_cpuid.get_cpu_vendor() == utils_cpuid.CpuVendor.AMD: - # We shouldn't be able to apply Intel templates on AMD hosts - fail_msg = "CPU vendor mismatched between actual CPU and CPU template" - with pytest.raises(RuntimeError, match=fail_msg): - test_microvm.start() else: - test_microvm.start() + test_microvm.api.machine_config.patch(cpu_template=SUPPORTED_CPU_TEMPLATES[0]) + + test_microvm.start() # Validate full vm configuration after patching machine config. json = test_microvm.api.vm_config.get().json() @@ -1077,8 +1070,8 @@ def test_get_full_config_after_restoring_snapshot(microvm_factory, uvm_nano): if cpu_vendor == utils_cpuid.CpuVendor.ARM: setup_cfg["machine-config"]["smt"] = False - if cpu_vendor == utils_cpuid.CpuVendor.INTEL: - setup_cfg["machine-config"]["cpu_template"] = "C3" + if len(SUPPORTED_CPU_TEMPLATES) != 0: + setup_cfg["machine-config"]["cpu_template"] = SUPPORTED_CPU_TEMPLATES[0] uvm_nano.api.machine_config.patch(**setup_cfg["machine-config"]) diff --git a/tests/integration_tests/functional/test_cmd_line_start.py b/tests/integration_tests/functional/test_cmd_line_start.py index 096bea38c6c..84b954e7038 100644 --- a/tests/integration_tests/functional/test_cmd_line_start.py +++ b/tests/integration_tests/functional/test_cmd_line_start.py @@ -12,8 +12,9 @@ import pytest from tenacity import Retrying, retry_if_exception_type, stop_after_attempt, wait_fixed -from framework import utils, utils_cpuid +from framework import utils from framework.utils import generate_mmds_get_request, generate_mmds_session_token +from framework.utils_cpu_templates import SUPPORTED_CPU_TEMPLATES # Directory with metadata JSON files DIR = Path("./data") @@ -195,8 +196,8 @@ def test_config_bad_machine_config(uvm_plain, vm_config_file): @pytest.mark.parametrize( "test_config", [ - ("framework/vm_config_cpu_template_C3.json", False, True, True), - ("framework/vm_config_smt_true.json", False, False, True), + ("framework/vm_config_cpu_template_C3.json", True, False), + ("framework/vm_config_smt_true.json", False, True), ], ) def test_config_machine_config_params(uvm_plain, test_config): @@ -207,22 +208,20 @@ def test_config_machine_config_params(uvm_plain, test_config): # Test configuration determines if the file is a valid config or not # based on the CPU - (vm_config_file, fail_intel, fail_amd, fail_aarch64) = test_config + (vm_config_file, cpu_template_used, smt_used) = test_config _configure_vm_from_json(test_microvm, vm_config_file) test_microvm.jailer.extra_args.update({"no-api": None}) test_microvm.spawn() - cpu_vendor = utils_cpuid.get_cpu_vendor() + should_fail = False + if cpu_template_used and "C3" not in SUPPORTED_CPU_TEMPLATES: + should_fail = True + if smt_used and (platform.machine() == "aarch64"): + should_fail = True - check_for_failed_start = ( - (cpu_vendor == utils_cpuid.CpuVendor.AMD and fail_amd) - or (cpu_vendor == utils_cpuid.CpuVendor.INTEL and fail_intel) - or (platform.machine() == "aarch64" and fail_aarch64) - ) - - if check_for_failed_start: + if should_fail: test_microvm.check_any_log_message( [ "Failed to build MicroVM from Json", diff --git a/tests/integration_tests/functional/test_cpu_features_x86_64.py b/tests/integration_tests/functional/test_cpu_features_x86_64.py index 0fb51e5bd37..bd8c5daba54 100644 --- a/tests/integration_tests/functional/test_cpu_features_x86_64.py +++ b/tests/integration_tests/functional/test_cpu_features_x86_64.py @@ -643,7 +643,9 @@ def test_cpu_cpuid_restore(microvm_factory, guest_kernel, msr_cpu_template): ) -@pytest.mark.parametrize("cpu_template", ["T2", "T2S", "C3"]) +@pytest.mark.parametrize( + "cpu_template", sorted({"T2", "T2S", "C3"}.intersection(SUPPORTED_CPU_TEMPLATES)) +) def test_cpu_template(uvm_plain_any, cpu_template, microvm_factory): """ Test masked and enabled cpu features against the expected template. diff --git a/tools/gh_release.py b/tools/gh_release.py index 172b1adc1b5..ae43c5797d6 100755 --- a/tools/gh_release.py +++ b/tools/gh_release.py @@ -26,7 +26,7 @@ def build_tarball(release_dir, release_tgz, arch): exclude_files = { "RELEASE_NOTES", "SHA256SUMS.sig", - *[f.stem for f in Path("tests/data/static_cpu_templates").glob("*.json")], + *[f.stem for f in Path("tests/data/custom_cpu_templates").glob("*.json")], } with tarfile.open(release_tgz, "w:gz") as tar: files = [x for x in release_dir.rglob("*") if x.is_file()] diff --git a/tools/release.sh b/tools/release.sh index cb433256932..4679b85739e 100755 --- a/tools/release.sh +++ b/tools/release.sh @@ -179,7 +179,7 @@ cp -v src/firecracker/swagger/firecracker.yaml "$RELEASE_DIR/firecracker_spec-$V CPU_TEMPLATES=(c3 t2 t2s t2cl t2a v1n1) for template in "${CPU_TEMPLATES[@]}"; do - cp -v tests/data/static_cpu_templates/$template.json $RELEASE_DIR/$template-$VERSION.json + cp -v tests/data/custom_cpu_templates/$template.json $RELEASE_DIR/$template-$VERSION.json done (