Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1:kernel-2.6.32
xen
19353-amd-migration-fix.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 19353-amd-migration-fix.patch of Package xen
# HG changeset patch # User Keir Fraser <keir.fraser@citrix.com> # Date 1237301616 0 # Node ID d32c861460f242803f07521720aa049415be4208 # Parent abb2b74ff3bc9442c1ec6d43c2dd122b3ad38ea5 [SVM] fix segment descriptors to allow migration to Intel VT systems Signed-off-by: Christoph Egger <Christoph.Egger@amd.com> xen-unstable changeset: 19353:0f7e2ba5d0e62022f0d59b0e098ab9b0747ce1f4 xen-unstable date: Fri Mar 13 07:43:45 2009 +0000 Index: xen-3.3.1-testing/xen/arch/x86/hvm/svm/svm.c =================================================================== --- xen-3.3.1-testing.orig/xen/arch/x86/hvm/svm/svm.c +++ xen-3.3.1-testing/xen/arch/x86/hvm/svm/svm.c @@ -488,28 +488,40 @@ static void svm_get_segment_register(str { case x86_seg_cs: memcpy(reg, &vmcb->cs, sizeof(*reg)); + reg->attr.fields.g = reg->limit > 0xFFFFF; break; case x86_seg_ds: memcpy(reg, &vmcb->ds, sizeof(*reg)); + if ( reg->attr.fields.type != 0 ) + reg->attr.fields.type |= 0x1; break; case x86_seg_es: memcpy(reg, &vmcb->es, sizeof(*reg)); + if ( reg->attr.fields.type != 0 ) + reg->attr.fields.type |= 0x1; break; case x86_seg_fs: svm_sync_vmcb(v); memcpy(reg, &vmcb->fs, sizeof(*reg)); + if ( reg->attr.fields.type != 0 ) + reg->attr.fields.type |= 0x1; break; case x86_seg_gs: svm_sync_vmcb(v); memcpy(reg, &vmcb->gs, sizeof(*reg)); + if ( reg->attr.fields.type != 0 ) + reg->attr.fields.type |= 0x1; break; case x86_seg_ss: memcpy(reg, &vmcb->ss, sizeof(*reg)); reg->attr.fields.dpl = vmcb->cpl; + if ( reg->attr.fields.type == 0 ) + reg->attr.fields.db = 0; break; case x86_seg_tr: svm_sync_vmcb(v); memcpy(reg, &vmcb->tr, sizeof(*reg)); + reg->attr.fields.type |= 0x2; break; case x86_seg_gdtr: memcpy(reg, &vmcb->gdtr, sizeof(*reg));
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor