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

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


  • To: "Magenheimer, Dan \(HP Labs Fort Collins\)" <dan.magenheimer@xxxxxx>, "Tristan Gingold" <Tristan.Gingold@xxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Xu, Anthony" <anthony.xu@xxxxxxxxx>
  • Date: Wed, 5 Apr 2006 09:50:10 +0800
  • Delivery-date: Tue, 04 Apr 2006 18:50:49 -0700
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: AcZX+1SsKcDEeYmsQJCiYi6jVISCOAAAdEwwAAighpAAC5RasA==
  • Thread-topic: [Xen-ia64-devel] RFC: ptc.ga implementation for SMP-g

>From: Magenheimer, Dan 
>Sent: 2006?4?5? 3:46
>
>I think ptc.ga needs to execute as a "transaction", that is,
>it is not complete until all other processors' translations
>have been purged.  If not, consider (in the above):
>
>4.5. vcpu2 doesn't trap to the hypervisor for a very long time
>     and continues to use the unpurged translation, while vcpu1
>     assumes the translation has been successfully purged and
>     sets up a new translation and assumes that vcpu2 will "miss"
>     and use the new translation.
>

Thanks for comments,

Let's first analyze how linux uses ptc.ga.

In linux, a process is only running on a LP at one time, is this
correct?

Linux kernel (on behalf of a process that is running) uses ptc.ga to
purge this 
process's tlbs. But linux kernel will not purge processes' tlbs those
are not 
running on this LP, this is my understanding, if linux kernel does purge
other 
processes those are not running on this LP, linux kernel will reset
region 
registers, I didn't see this code.   Is this correct?

If above two are all correct.
When a process running on vcpu1 is executing ptc.ga, 
This process is not running on vcpu2 at the same time,
that means the tlbs which ptc.ga wants to purge is not used on vcpu2 
until this process is scheduled to vcpu2.
Before this process is scheduled to vcpu2, guest kernel will
Reset region registers for this process, and then hypervisor gets
control to
purge the tlbs.

Comments welcome

>Dan

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