diff options
author | Jan Beulich <jbeulich@novell.com> | 2012-07-09 10:23:57 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2012-07-09 10:23:57 +0100 |
commit | c279f333a7716b1b4e9f21beedaada751be1f2d5 (patch) | |
tree | d3625f371844509bb549d94cff3f768802a98b27 | |
parent | 78bfaf79b74ced55a1ad9f86068b587c681ce098 (diff) | |
download | xen-c279f333a7716b1b4e9f21beedaada751be1f2d5.tar.gz xen-c279f333a7716b1b4e9f21beedaada751be1f2d5.tar.bz2 xen-c279f333a7716b1b4e9f21beedaada751be1f2d5.zip |
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
-rw-r--r-- | xen/arch/x86/acpi/cpu_idle.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c index 6ae9d476a9..3fde934194 100644 --- a/xen/arch/x86/acpi/cpu_idle.c +++ b/xen/arch/x86/acpi/cpu_idle.c @@ -44,6 +44,7 @@ #include <xen/sched-if.h> #include <asm/cache.h> #include <asm/io.h> +#include <asm/iocap.h> #include <asm/hpet.h> #include <asm/processor.h> #include <xen/pmstat.h> @@ -888,6 +889,9 @@ static void set_cx( cx->entry_method = ACPI_CSTATE_EM_HALT; break; case ACPI_ADR_SPACE_SYSTEM_IO: + if ( ioports_deny_access(dom0, cx->address, cx->address) ) + printk(XENLOG_WARNING "Could not deny access to port %04x\n", + cx->address); cx->entry_method = ACPI_CSTATE_EM_SYSIO; break; default: |