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

[Xen-ia64-devel] vcpu context merge


  • To: "Magenheimer, Dan \(HP Labs Fort Collins\)" <dan.magenheimer@xxxxxx>
  • From: "Dong, Eddie" <eddie.dong@xxxxxxxxx>
  • Date: Wed, 18 May 2005 15:29:30 +0800
  • Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Wed, 18 May 2005 07:29:09 +0000
  • List-id: DIscussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: AcVbe1RkD/iHinBzT3SB7w1CGdFiMQ==
  • Thread-topic: vcpu context merge

Dan:
        For the VCPU context merge, basically the context needs to be
shared to XENO OS should be put in vcpu_info_t.arch_vcpu_info_t
otherwise we can keep it in exec_domain.arch_exec_domain. From the
structure of arch_vcpu_info_t, it includes following parts:
        1:  parts of guest CR registers.
        2:  Bank registers (need NAT bits in future)
        3:  RR/KR/PKR
        4:  guest TLB
        5:  time related variables.
        6: lsapic insvc[]
        7: Some paravirtualization specific variables.

        When thinking to merge arch_vmx_struct with arch_vcpu_info_t, #3
is same for both, #4 is different now but we can put both togther now
and wait next level of merge. same for #5 & #6.  #7 is XENO only so no
merge issue. The key issue is #1 & #2 that is called vpd (virtual
processor descriptor) in VTI. VPD include guest CR, vpsr, vpr, bank
registers, NAT bits and other regsiters. It needs to be 32K aligned
requested by VTI architecture so we use a pointer in
arch_exec_domain.arch_vmx_struct. I know it is a little bit difficult
for you to access VCR through pointer in XENOLinux. If we can adopt the
pointer of vpd in arch_vcpu_info_t, we can put machine address of vpd
there to let XENOLinux remap it. Another va point in arch_exec_domain
can still exist for HV to access.
        Any suggestions?
Eddie

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