Skip to content

Commit

Permalink
KVM: SVM: Make set_msr_interception more reliable
Browse files Browse the repository at this point in the history
set_msr_interception() is used by svm to set up which MSRs should be
intercepted.  It can only fail if someone has changed the code to try
to intercept an MSR without updating the array of ranges.

The return value is ignored anyway: it should just BUG() if it doesn't
work.  (A build-time failure would be better, but that's tricky).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Avi Kivity <avi@qumranet.com>
  • Loading branch information
Rusty Russell authored and Avi Kivity committed Oct 13, 2007
1 parent 7e9d619 commit bfc733a
Showing 1 changed file with 4 additions and 5 deletions.
9 changes: 4 additions & 5 deletions drivers/kvm/svm.c
Original file line number Diff line number Diff line change
Expand Up @@ -359,8 +359,8 @@ static int svm_cpu_init(int cpu)

}

static int set_msr_interception(u32 *msrpm, unsigned msr,
int read, int write)
static void set_msr_interception(u32 *msrpm, unsigned msr,
int read, int write)
{
int i;

Expand All @@ -375,11 +375,10 @@ static int set_msr_interception(u32 *msrpm, unsigned msr,
u32 mask = ((write) ? 0 : 2) | ((read) ? 0 : 1);
*base = (*base & ~(0x3 << msr_shift)) |
(mask << msr_shift);
return 1;
return;
}
}
printk(KERN_DEBUG "%s: not found 0x%x\n", __FUNCTION__, msr);
return 0;
BUG();
}

static __init int svm_hardware_setup(void)
Expand Down

0 comments on commit bfc733a

Please sign in to comment.