On Tue, Jun 02, 2009 at 12:09:17PM +0300, Avi Kivity wrote:
> Joerg Roedel wrote:
>> On Mon, Jun 01, 2009 at 04:22:03PM +0300, Avi Kivity wrote:
>>   
>>> +static void svm_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg)
>>> +{
>>> +   switch (reg) {
>>> +   case VCPU_EXREG_PDPTR:
>>> +           BUG_ON(!npt_enabled);
>>> +           load_pdptrs(vcpu, vcpu->arch.cr3);
>>> +           break;
>>> +   default:
>>> +           BUG();
>>> +   }
>>> +}
>>>     
>>
>> Don't we need to check for the return value of load_pdptrs() here and inject
>> a #GP it it fails?
>>   
>
> We're after some random exit, the guest won't be expecting a #GP in some  
> random instruction.
>
> The only options are ignore and triple fault.

Thats not different from PAE with NPT anyways. With NPT the hardware
does not load all four pdptrs on cr3 switch time, only when they
are used.

Joerg

-- 
           | Advanced Micro Devices GmbH
 Operating | Karl-Hammerschmidt-Str. 34, 85609 Dornach bei München
 System    | 
 Research  | Geschäftsführer: Thomas M. McCoy, Giuliano Meroni
 Center    | Sitz: Dornach, Gemeinde Aschheim, Landkreis München
           | Registergericht München, HRB Nr. 43632

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to