From 32a9cc9ff147dbb21430b3c9723b41d2ede49c8e Mon Sep 17 00:00:00 2001 From: Michael Young Date: Aug 07 2012 20:57:30 +0000 Subject: remove some unnecessary cache flushing that slow things down, change python options on xend to reduce selinux problems --- diff --git a/xen-4.1-testing.23298.patch b/xen-4.1-testing.23298.patch new file mode 100644 index 0000000..3ef4add --- /dev/null +++ b/xen-4.1-testing.23298.patch @@ -0,0 +1,42 @@ + +# HG changeset patch +# User Wei Wang +# Date 1337930327 -3600 +# Node ID 435493696053a079ec17d6e1a63e5f2be3a2c9d0 +# Parent 35248be669e71520eb40e85986b106bd5164d7ea +x86/cpuidle: do not flush cache unless entering C3 + +Nor is there a need to disable bus master arbitration in that case. + +Signed-off-by: Wei Wang +Modified-by: Zhang, Yang Z +Signed-off-by: Jan Beulich +Committed-by: Jan Beulich +xen-unstable changeset: 25195:a06e6cdeafe3 +xen-unstable date: Mon Apr 16 13:05:28 2012 +0200 + +diff -r 35248be669e7 -r 435493696053 xen/arch/x86/acpi/cpu_idle.c +--- a/xen/arch/x86/acpi/cpu_idle.c Mon May 14 16:59:12 2012 +0100 ++++ b/xen/arch/x86/acpi/cpu_idle.c Fri May 25 08:18:47 2012 +0100 +@@ -483,7 +483,9 @@ static void acpi_processor_idle(void) + * not set. In that case we cannot do much, we enter C3 + * without doing anything. + */ +- if ( power->flags.bm_check && power->flags.bm_control ) ++ if ( cx->type != ACPI_STATE_C3 ) ++ /* nothing to be done here */; ++ else if ( power->flags.bm_check && power->flags.bm_control ) + { + spin_lock(&c3_cpu_status.lock); + if ( ++c3_cpu_status.count == num_online_cpus() ) +@@ -505,7 +507,8 @@ static void acpi_processor_idle(void) + /* Invoke C3 */ + acpi_idle_do_entry(cx); + +- if ( power->flags.bm_check && power->flags.bm_control ) ++ if ( (cx->type == ACPI_STATE_C3) && ++ power->flags.bm_check && power->flags.bm_control ) + { + /* Enable bus master arbitration */ + spin_lock(&c3_cpu_status.lock); + diff --git a/xen.spec b/xen.spec index 6cf10a6..c0e1ec1 100644 --- a/xen.spec +++ b/xen.spec @@ -20,7 +20,7 @@ Summary: Xen is a virtual machine monitor Name: xen Version: 4.1.2 -Release: 24%{?dist} +Release: 25%{?dist} Group: Development/Libraries License: GPLv2+ and LGPLv2+ and BSD URL: http://xen.org/ @@ -73,7 +73,7 @@ Patch35: xend-pci-loop.patch Patch36: localgcc47fix.patch Patch37: qemu-xen-4.1-testing.git-3cf61880403b4e484539596a95937cc066243388.patch Patch38: xen-backend.rules.patch -Patch39: xend.selinux.setuid.patch +Patch39: xend.selinux.fixes.patch Patch40: pygrub.size.limits.patch Patch41: xen-4.1-testing.23297.patch Patch42: CVE-2012-0217.patch @@ -81,6 +81,7 @@ Patch43: CVE-2012-0218.patch Patch44: CVE-2012-2934.patch Patch45: xen-no-pyxml.patch Patch46: xen-4.1-testing.23325.patch +Patch47: xen-4.1-testing.23298.patch Patch50: upstream-23936:cdb34816a40a-rework Patch51: upstream-23937:5173834e8476 @@ -253,6 +254,7 @@ manage Xen virtual machines. %patch44 -p1 %patch45 -p1 %patch46 -p1 +%patch47 -p1 %patch50 -p1 %patch51 -p1 @@ -717,6 +719,10 @@ rm -rf %{buildroot} %endif %changelog +* Tue Aug 07 2012 Michael Young - 4.1.2-25 +- remove some unnecessary cache flushing that slow things down +- change python options on xend to reduce selinux problems + * Thu Jul 26 2012 Michael Young - 4.1.2-24 - in rare circumstances an unprivileged user can crash an HVM guest [XSA-10,CVE-2012-3432] (#843766) diff --git a/xend.selinux.fixes.patch b/xend.selinux.fixes.patch new file mode 100644 index 0000000..c5591e6 --- /dev/null +++ b/xend.selinux.fixes.patch @@ -0,0 +1,20 @@ +--- xen-4.1.2/tools/python/xen/xend/server/SrvDaemon.py.orig 2012-04-15 17:17:50.167887550 +0100 ++++ xen-4.1.2/tools/python/xen/xend/server/SrvDaemon.py 2012-04-15 17:31:13.648842655 +0100 +@@ -325,7 +325,8 @@ + def set_user(self): + # Set the UID. + try: +- os.setuid(pwd.getpwnam(XEND_USER)[2]) ++ if XEND_USER != "root": ++ os.setuid(pwd.getpwnam(XEND_USER)[2]) + return 0 + except KeyError: + print >>sys.stderr, "Error: no such user '%s'" % XEND_USER +--- xen-4.1.2/tools/misc/xend.orig 2012-08-07 00:54:02.372867624 +0100 ++++ xen-4.1.2/tools/misc/xend 2012-08-07 00:58:11.469753483 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python -Es + # -*- mode: python; -*- + #============================================================================ + # Copyright (C) 2004 Mike Wray diff --git a/xend.selinux.setuid.patch b/xend.selinux.setuid.patch deleted file mode 100644 index 902b960..0000000 --- a/xend.selinux.setuid.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- xen-4.1.2/tools/python/xen/xend/server/SrvDaemon.py.orig 2012-04-15 17:17:50.167887550 +0100 -+++ xen-4.1.2/tools/python/xen/xend/server/SrvDaemon.py 2012-04-15 17:31:13.648842655 +0100 -@@ -325,7 +325,8 @@ - def set_user(self): - # Set the UID. - try: -- os.setuid(pwd.getpwnam(XEND_USER)[2]) -+ if XEND_USER != "root": -+ os.setuid(pwd.getpwnam(XEND_USER)[2]) - return 0 - except KeyError: - print >>sys.stderr, "Error: no such user '%s'" % XEND_USER