Xen pv-ops for EC2
This is a multi-part message in MIME format.
On 07/30/2010 08:23 AM, John Johansen wrote:
The following request pull enables -virtual kernel to function as a pv-ops
kernel on EC2. This does not include the pv-on-HVM drivers which are required
for Amazon's Compute Cloud, will be in a separate request.
The following changes since commit 8f2ff69dce18ed856a8d1b93176f768b47eeed86:
UBUNTU: SAUCE: drm -- stop early access to drm devices (2010-07-29 11:41:40 -0700)
are available in the git repository at:
git://kernel.ubuntu.com/jj/ubuntu-maverick.git pvops
John Johansen (3):
UBUNTU: SAUCE: fix pv-ops for legacy Xen
UBUNTU: SAUCE: blkfront: default to sd devices
UBUNTU: [Config] Build in drivers required for Xen pv-ops
arch/x86/xen/enlighten.c | 1 +
.../abi/2.6.35-12.17/amd64/virtual.modules | 2 --
.../abi/2.6.35-12.17/i386/virtual.modules | 2 --
debian.master/config/amd64/config.flavour.generic | 2 ++
debian.master/config/amd64/config.flavour.server | 2 ++
debian.master/config/amd64/config.flavour.virtual | 2 ++
debian.master/config/armel/config.common.armel | 2 ++
debian.master/config/config.common.ubuntu | 2 --
debian.master/config/i386/config.flavour.generic | 2 ++
.../config/i386/config.flavour.generic-pae | 2 ++
debian.master/config/i386/config.flavour.virtual | 2 ++
drivers/block/xen-blkfront.c | 2 +-
12 files changed, 16 insertions(+), 7 deletions(-)
A couple of minor commit log edits, and a rerun of updateconfigs after
changing the Xen config options.
rtg
--
Tim Gardner tim.gardner@canonical.com
The following changes since commit 8f2ff69dce18ed856a8d1b93176f768b47eeed86:
Andy Whitcroft (1):
UBUNTU: SAUCE: drm -- stop early access to drm devices
are available in the git repository at:
git://kernel.ubuntu.com/rtg/ubuntu-maverick.git master
John Johansen (3):
UBUNTU: SAUCE: fix pv-ops for legacy Xen
UBUNTU: SAUCE: blkfront: default to sd devices
UBUNTU: [Config] Build in drivers required for Xen pv-ops
arch/x86/xen/enlighten.c | 1 +
.../abi/2.6.35-12.17/amd64/virtual.modules | 2 --
.../abi/2.6.35-12.17/i386/virtual.modules | 2 --
debian.master/config/amd64/config.flavour.generic | 2 ++
debian.master/config/amd64/config.flavour.server | 2 ++
debian.master/config/amd64/config.flavour.virtual | 2 ++
debian.master/config/armel/config.common.armel | 2 ++
debian.master/config/config.common.ubuntu | 2 --
.../config/i386/config.flavour.generic-pae | 2 ++
debian.master/config/i386/config.flavour.virtual | 2 ++
drivers/block/xen-blkfront.c | 2 +-
11 files changed, 14 insertions(+), 7 deletions(-)
From 1a30f9956e40bc45f8fb44e7593f82353d46fa78 Mon Sep 17 00:00:00 2001
From: John Johansen <john.johansen@canonical.com>
Date: Tue, 27 Jul 2010 06:06:07 -0700
Subject: [PATCH 1/3] UBUNTU: SAUCE: fix pv-ops for legacy Xen
Import fix_xen_guest_on_old_EC2.patch from fedora 14
Legacy hypervisors (RHEL 5.0 and RHEL 5.1) do not handle guest writes to
cr4 gracefully. If a guest attempts to write a bit of cr4 that is
unsupported, then the HV is so offended it crashes the domain. While
later guest kernels (such as RHEL6) don't assume the HV supports all
features, they do expect nicer responses. That assumption introduced
code that probes whether or not xsave is supported early in the boot. So
now when attempting to boot a RHEL6 guest on RHEL5.0 or RHEL5.1 an early
crash will occur.
This patch is quite obviously an undesirable hack. The real fix for this
problem should be in the HV, and is, in later HVs. However, to support
running on old HVs, RHEL6 can take this small change. No impact will
occur for running on any RHEL HV (not even RHEL 5.5 supports xsave).
There is only potential for guest performance loss on upstream Xen.
All this by way of explanation for why is this patch not going upstream.
Signed-off-by: John Johansen <john.johansen@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
---
arch/x86/xen/enlighten.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index 1ea06f8..f7ff4c7 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -794,6 +794,7 @@ static void xen_write_cr4(unsigned long cr4)
{
cr4 &= ~X86_CR4_PGE;
cr4 &= ~X86_CR4_PSE;
+ cr4 &= ~X86_CR4_OSXSAVE;
native_write_cr4(cr4);
}
--
1.7.0.4
|