Tested and committed. I am concerned about the vcpu_regs
issue but we can watch for data corruption and revisit
the vcpu_regs change if we see any.
> -----Original Message-----
> From: Xu, Anthony [mailto:anthony.xu@xxxxxxxxx]
> Sent: Monday, September 19, 2005 5:55 AM
> To: Magenheimer, Dan (HP Labs Fort Collins)
> Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> Subject: [Xen-ia64-devel] [PATCH] This is the second patch to
> merge vcpu.c
> Thanks, Dan, I have noticed that the first patch for merging
> vcpu.c had been cheked in.
> This patch is based on ver.6866, and has gone through your
> Following things are done in this patch.
> 1. Add r4,r5,r6,r7,eml_unat,rfi_pfs six members at the end of
> thus VMM for non-VT domain doesn't need to save/restore
> just in case VMM may need modify guest r4,r5,r6,r7 value,
> eml_unat is saved
> in case VMM may need modify guest unat, rfi_pfs is used to
> emulate guest rfi
> instruction for VT domain, and is used as dummy member for
> alignment of F6,
> F7 etc. in pt_regs for non-VT domain. And add code to
> save/restore r4,r5,r6,
> r7,eml_unat in minstate.h and entry.s for non-VT domain.
> and remove code to
> save/restore SWITCH_STACK in ivt.S for non-VT domain.
> 2. Originally guest banked registers of VT domain are saved
> directly in VPD. Now
> Guest banked registers of VT domain are saved to pt_regs
> at the entry of VMM,
> just for consistence with non-VT domain, vmx_vcpu_bsw0 and
> vmx_vcpu_bsw1 are
> rewriten for accomodating this change.
> 3. After above changes, all guest registers and nat bits are
> saved at same place
> both for VTI domain and for non-VTI domain, so vcpu_get/set_gr and
> rse_get/set_gr are merged, and all these functions can
> handle guest nats.
> 4. Merged vcpu_bsw0 and vcpu_bsw1, Now VMM uses
> vgr,vbgr,vnat,vbnat in
> mapped_regs_t struct (is also vpd) to emuate guest banking
> switch operation.
> 5. Removed some CONFIG_VTIs and cleaned up some unused
> structure members and codes.
> Signed-off-by Anthony Xu <Anthony.xu@xxxxxxxxx>
Xen-ia64-devel mailing list