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

Re: [Xen-ia64-devel] RFC: ptc.ga implementation for SMP-g



Le Mardi 04 Avril 2006 10:15, Tian, Kevin a écrit :
[...]
> >diff -r ddc279c91502 xen/arch/ia64/xen/vcpu.c
> >--- a/xen/arch/ia64/xen/vcpu.c       Fri Mar 31 21:04:16 2006
> >+++ b/xen/arch/ia64/xen/vcpu.c       Mon Apr  3 11:20:57 2006
> >+                    do {
> >+                            /* Wait until the tlb is not used.  */
> >+                            while ((count = PSCBX(vcpu, tlb_inuse)) & 1)
> >+                                    cpu_relax ();
> >+
> >+                            /* Purge tc entries.  */
> >+                            vcpu_purge_tr_entry(&PSCBX(vcpu,dtlb));
> >+                            vcpu_purge_tr_entry(&PSCBX(vcpu,itlb));
>
> It's possible tlb_inuse is set again here, however for a new guest tlb
> entry which means content of dtlb/itlb may change within this window. Then
> the new tlb entry will be incorrectly purged in next loop.
The original code unconditionnaly purge tc.  This code does too.  For sure, it 
is inefficient.
Is it incorrect too ?

Tristan.



_______________________________________________
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®.