static int get_bitmap_index(uint_t msr)
{
+ // unsigned comparison with 0 here for clarity
if( (msr >= LOW_MSR_START) && msr <= LOW_MSR_END) {
return LOW_MSR_INDEX + msr;
} else if (( msr >= HIGH_MSR_START ) && (msr <= HIGH_MSR_END)) {
return (HIGH_MSR_INDEX * 8) + (msr - HIGH_MSR_START);
} else {
- PrintError("MSR out of range: 0x%x\n", msr);
+ PrintError(VM_NONE, VCORE_NONE, "MSR out of range: 0x%x\n", msr);
return -1;
}
}
msr_map->update_map = update_map;
- temp = V3_AllocPages(1);
+ temp = V3_AllocPages(1); // need not be shadow-safe, not exposed to guest
if (!temp) {
- PrintError("Cannot allocat MSR bitmap\n");
+ PrintError(vm, VCORE_NONE, "Cannot allocat MSR bitmap\n");
return -1;
}
msr_map->arch_data = V3_VAddr(temp);