|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [V10 PATCH 10/23] PVH xen: domain create, context switch related code changes
>>> On 25.07.13 at 16:01, Tim Deegan <tim@xxxxxxx> wrote:
> At 18:59 -0700 on 23 Jul (1374605958), Mukesh Rathor wrote:
>> @@ -861,7 +865,7 @@ int arch_set_info_guest(
>>
>> if ( !cr3_page )
>> rc = -EINVAL;
>> - else if ( paging_mode_refcounts(d) )
>> + else if ( paging_mode_refcounts(d) || is_pvh_vcpu(v) )
>
> Isn't paging_mode_refcounts() true for all PVH vcpus/domains? (This
> code is OK - I just want to check that I've understood what's going on.)
>
>> /* nothing */;
>> else if ( cr3_page == v->arch.old_guest_table )
>> {
>> @@ -893,8 +897,15 @@ int arch_set_info_guest(
>> /* handled below */;
>> else if ( !compat )
>> {
>> + /* PVH 32bitfixme. */
>> + if ( is_pvh_vcpu(v) )
>> + {
>> + v->arch.cr3 = page_to_mfn(cr3_page);
>
> Not page_to_maddr()? I guess that with paging_mode_translate(),
> arch.cr3 doesn't actually get used.
>
>> + v->arch.hvm_vcpu.guest_cr[3] = c.nat->ctrlreg[3];
>> + }
>> +
>> v->arch.guest_table = pagetable_from_page(cr3_page);
>> - if ( c.nat->ctrlreg[1] )
>> + if ( c.nat->ctrlreg[1] && !is_pvh_vcpu(v) )
>
> If you're respinning this patch, maybe use is_pv_vcpu() here?
And perhaps it would be worth rejecting non-zero CR1 values
for PVH?
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |