xcp-1.6-updates/xen-4.1.hg

changeset 23316:01366a324587

x86/cpuidle: deny access to the I/O port used for EM_SYSIO

Nothing, not even Dom0, should fiddle with this.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
xen-unstable changeset: 24970:33980e36597b
xen-unstable date: Tue Mar 06 16:41:41 2012 +0100
author Jan Beulich <jbeulich@novell.com>
date Mon Jul 09 10:23:57 2012 +0100 (2012-07-09)
parents 3b50ea3909a8
children c1f43d07dc1e
files xen/arch/x86/acpi/cpu_idle.c
line diff
     1.1 --- a/xen/arch/x86/acpi/cpu_idle.c	Mon Jul 09 10:23:30 2012 +0100
     1.2 +++ b/xen/arch/x86/acpi/cpu_idle.c	Mon Jul 09 10:23:57 2012 +0100
     1.3 @@ -44,6 +44,7 @@
     1.4  #include <xen/sched-if.h>
     1.5  #include <asm/cache.h>
     1.6  #include <asm/io.h>
     1.7 +#include <asm/iocap.h>
     1.8  #include <asm/hpet.h>
     1.9  #include <asm/processor.h>
    1.10  #include <xen/pmstat.h>
    1.11 @@ -888,6 +889,9 @@ static void set_cx(
    1.12              cx->entry_method = ACPI_CSTATE_EM_HALT;
    1.13          break;
    1.14      case ACPI_ADR_SPACE_SYSTEM_IO:
    1.15 +        if ( ioports_deny_access(dom0, cx->address, cx->address) )
    1.16 +            printk(XENLOG_WARNING "Could not deny access to port %04x\n",
    1.17 +                   cx->address);
    1.18          cx->entry_method = ACPI_CSTATE_EM_SYSIO;
    1.19          break;
    1.20      default: