diff --git a/src/libos/src/exception/cpuid.rs b/src/libos/src/exception/cpuid.rs index c258e34f..17718092 100644 --- a/src/libos/src/exception/cpuid.rs +++ b/src/libos/src/exception/cpuid.rs @@ -6,9 +6,7 @@ use std::rsgx_cpuidex; pub const CPUID_OPCODE: u16 = 0xA20F; const CPUID_MIN_BASIC_LEAF: u32 = 0; -const CPUID_MAX_BASIC_LEAF: u32 = 0x1F; const CPUID_MIN_EXTEND_LEAF: u32 = 0x8000_0000; -const CPUID_MAX_EXTEND_LEAF: u32 = 0x8000_0008; const CPUID_MAX_SUBLEAF: u32 = u32::max_value(); #[repr(C)] @@ -146,23 +144,11 @@ impl CpuIdCache { impl CpuId { pub fn new() -> CpuId { let max_basic_leaf = match rsgx_cpuidex(CPUID_MIN_BASIC_LEAF as i32, 0) { - Ok(sgx_cpuinfo) => { - if is_valid_cpuid_basic_leaf(sgx_cpuinfo[0] as u32) { - sgx_cpuinfo[0] as u32 - } else { - panic!("invalid basic cpuid_level") - } - } + Ok(sgx_cpuinfo) => sgx_cpuinfo[0] as u32, _ => panic!("failed to call sgx_cpuidex"), }; let max_extend_leaf = match rsgx_cpuidex(CPUID_MIN_EXTEND_LEAF as i32, 0) { - Ok(sgx_cpuinfo) => { - if is_valid_cpuid_extend_leaf(sgx_cpuinfo[0] as u32) { - sgx_cpuinfo[0] as u32 - } else { - panic!("invalid extend cpuid_xlevel") - } - } + Ok(sgx_cpuinfo) => sgx_cpuinfo[0] as u32, _ => panic!("failed to call sgx_cpuidex"), }; let cpuid = CpuId { @@ -227,14 +213,6 @@ lazy_static! { static ref CPUID: CpuId = CpuId::new(); } -fn is_valid_cpuid_basic_leaf(leaf: u32) -> bool { - (CPUID_MIN_BASIC_LEAF..=CPUID_MAX_BASIC_LEAF).contains(&leaf) -} - -fn is_valid_cpuid_extend_leaf(leaf: u32) -> bool { - (CPUID_MIN_EXTEND_LEAF..=CPUID_MAX_EXTEND_LEAF).contains(&leaf) -} - fn is_cpuid_leaf_has_subleaves(leaf: u32) -> bool { const CPUID_LEAF_WITH_SUBLEAF: [u32; 11] = [0x4, 0x7, 0xB, 0xD, 0xF, 0x10, 0x12, 0x14, 0x17, 0x18, 0x1F];