Lines Matching refs:msr_area
1299 struct vmx_msr_entry *msr_area; in vmx_find_msr() local
1304 msr_area = curr->arch.hvm_vmx.msr_area; in vmx_find_msr()
1310 msr_area = curr->arch.hvm_vmx.host_msr_area; in vmx_find_msr()
1313 if ( msr_area == NULL ) in vmx_find_msr()
1316 return bsearch(&msr, msr_area, msr_count, sizeof(struct vmx_msr_entry), in vmx_find_msr()
1350 struct vmx_msr_entry **msr_area, *msr_area_elem; in vmx_add_msr() local
1355 msr_area = &curr->arch.hvm_vmx.msr_area; in vmx_add_msr()
1361 msr_area = &curr->arch.hvm_vmx.host_msr_area; in vmx_add_msr()
1364 if ( *msr_area == NULL ) in vmx_add_msr()
1366 if ( (*msr_area = alloc_xenheap_page()) == NULL ) in vmx_add_msr()
1371 __vmwrite(VM_EXIT_MSR_STORE_ADDR, virt_to_maddr(*msr_area)); in vmx_add_msr()
1372 __vmwrite(VM_ENTRY_MSR_LOAD_ADDR, virt_to_maddr(*msr_area)); in vmx_add_msr()
1375 __vmwrite(VM_EXIT_MSR_LOAD_ADDR, virt_to_maddr(*msr_area)); in vmx_add_msr()
1378 for ( idx = 0; idx < *msr_count && (*msr_area)[idx].index <= msr; idx++ ) in vmx_add_msr()
1379 if ( (*msr_area)[idx].index == msr ) in vmx_add_msr()
1385 memmove(*msr_area + idx + 1, *msr_area + idx, in vmx_add_msr()
1388 msr_area_elem = *msr_area + idx; in vmx_add_msr()
1659 free_xenheap_page(v->arch.hvm_vmx.msr_area); in vmx_destroy_vmcs()