|
|
|
|
|
|
|
|
|
|
xen-ia64-devel
[Xen-ia64-devel] 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
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-ia64-devel] vcpu context merge,
Dong, Eddie <=
|
|
|
|
|