1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * Test that KVM_GET_MSR_INDEX_LIST and 4 * KVM_GET_MSR_FEATURE_INDEX_LIST work as intended 5 * 6 * Copyright (C) 2020, Red Hat, Inc. 7 */ 8 #include <fcntl.h> 9 #include <stdio.h> 10 #include <stdlib.h> 11 #include <string.h> 12 #include <sys/ioctl.h> 13 14 #include "test_util.h" 15 #include "kvm_util.h" 16 #include "processor.h" 17 main(int argc,char * argv[])18int main(int argc, char *argv[]) 19 { 20 const struct kvm_msr_list *feature_list; 21 int i; 22 23 /* 24 * Skip the entire test if MSR_FEATURES isn't supported, other tests 25 * will cover the "regular" list of MSRs, the coverage here is purely 26 * opportunistic and not interesting on its own. 27 */ 28 TEST_REQUIRE(kvm_has_cap(KVM_CAP_GET_MSR_FEATURES)); 29 30 (void)kvm_get_msr_index_list(); 31 32 feature_list = kvm_get_feature_msr_index_list(); 33 for (i = 0; i < feature_list->nmsrs; i++) 34 kvm_get_feature_msr(feature_list->indices[i]); 35 } 36