[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-ia64-devel] PATCH: vti bugs fix



>>From: Tristan Gingold
>>Sent: 2006?8?10? 19:21
>>To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx; Alex Williamson
>>Subject: [Xen-ia64-devel] PATCH: vti bugs fix
>>
>>Hi,
>>
>>this patch fixes two bugs in vti code:
>>* guest_vhpt_lookup fails on long-format vhpt instead of reading it as
>>  a short-format one.
>>  This patch could be improved by reading the entry.  This is future work.
>Yes, guest long format vhpt needs to be handled.
>
>>* vtlb_purge loops infinitly if VA is high enough and some high bits are set
>>in psbits.
>
>Below fixes may be more efficient, and there was this logic, but was removed
>by accident

I got what you mean, these two patch are both needed.

>
>diff -r 6f02c4b9a9d0 xen/arch/ia64/vmx/vtlb.c
>    135 --- a/xen/arch/ia64/vmx/vtlb.c  Wed Aug 09 12:05:13 2006 +0800
>    136 +++ b/xen/arch/ia64/vmx/vtlb.c  Fri Aug 11 09:54:37 2006 +0800
>    137 @@ -250,7 +250,7 @@ void vtlb_purge(VCPU *v, u64 va, u64 ps)
>    138      psbits = VMX(v, psbits[(va >> 61)]);
>    139      size = PSIZE(ps);
>    140      start = va & (-size);
>    141 -    end = start + size;
>    142 +    end = start + size -1;
>    143      while (psbits) {
>    144          curadr = start;
>    145          ps = __ffs(psbits);
>    146 @@ -281,7 +281,7 @@ static void vhpt_purge(VCPU *v, u64 va,
>    147      ia64_rr rr;
>    148      size = PSIZE(ps);
>    149      start = va & (-size);
>    150 -    end = start + size;
>    151 +    end = start + size -1;
>    152      rr.rrval = ia64_get_rr(va);
>    153      size = PSIZE(rr.ps);
>    154      while(start < end){
>>
>>Tested by running a VTi domain with a long-format vhpt.
>Which guest OS do you run, which supports long-format vhpt?
>virtualizing/handling protect key may be needed to support guest long-format
>vhpt.
>
>Thanks,
>Anthony
>
>
>>
>>Tristan.
>
>_______________________________________________
>Xen-ia64-devel mailing list
>Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>http://lists.xensource.com/xen-ia64-devel

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.