WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

[Xen-ia64-devel] [PATCH] This is the first patch to merge vcpu.c

To: "Magenheimer, Dan \(HP Labs Fort Collins\)" <dan.magenheimer@xxxxxx>
Subject: [Xen-ia64-devel] [PATCH] This is the first patch to merge vcpu.c
From: "Xu, Anthony" <anthony.xu@xxxxxxxxx>
Date: Mon, 12 Sep 2005 20:28:21 +0800
Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 12 Sep 2005 12:28:08 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcW3k8hGa6d5du+US6qlqScOINw+uA==
Thread-topic: [Xen-ia64-devel] [PATCH] This is the first patch to merge vcpu.c
Dan,
This patch is based on ver 6723. And definitely I can boot dom0 with
this patch.

Following things are done in this patch.
1. Merge structure pt_reg.
2. Though vcpu_info structure has been merged, non-vt domain used
pointer vcpu->vcpu_info->arch.privregs, and vt domain used pointer
vcpu->arch.arch_vmx.vpd, the value of these two pointers are different,
that means vt and non-vt domain still use different privileged registers
pages, in this case, we can't merge vcpu.c, so I merged these two
pointer, and put it at vcpu->arch.privregs.
vcpu->vcpu_info->arch.privregs and vcpu->arch.arch_vmx.vpd  will not
exist. Why put it at vcpu->arch.privregs?  1. There will be one less
pointer unreferenced when accessing this privileged registers page. 2.
vcpu->vcpu_info can be accessed by guest, but guest can't access
privileged registers page through this address, guest can access this
privileged page only through another special mapping. So there is no
need to expose this pointer to guest by putting it in vcpu->vcpu_info
structure. All accesses to this page is through VCPU(vcpu,y) macro,
3. Merged following functions.
        Vcpu_set/get_(interruption control registers from cr16 to cr25),
corresponding functions vmx_vcpu_set/get_*** will not exist.
        Vcpu->arch.arch_vmx.in_service[4] will not exist, we will all
use vcpu->arch.insvc[4]
4. Cleaned up some unused structure members and codes.


Signed-off-by Anthony Xu <Anthony.xu@xxxxxxxxx>

Thanks,
Anthony

Attachment: merge_vcpu_1.patch
Description: merge_vcpu_1.patch

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel