diff options
author | Jan Beulich <jbeulich@suse.com> | 2012-03-06 16:41:41 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2012-03-06 16:41:41 +0100 |
commit | 111e9b24138cf3e1b19ee2ee95774f6f3811de75 (patch) | |
tree | 7df970c3062822fdeae017cc026a32549052cbc8 /xen/arch/x86/acpi | |
parent | ccee30d1b03707c38df5d17243025438fdc3ca21 (diff) | |
download | xen-111e9b24138cf3e1b19ee2ee95774f6f3811de75.tar.gz xen-111e9b24138cf3e1b19ee2ee95774f6f3811de75.tar.bz2 xen-111e9b24138cf3e1b19ee2ee95774f6f3811de75.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>
Diffstat (limited to 'xen/arch/x86/acpi')
-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 bc824e88c0..a675867f24 100644 --- a/xen/arch/x86/acpi/cpu_idle.c +++ b/xen/arch/x86/acpi/cpu_idle.c @@ -45,6 +45,7 @@ #include <xen/irq.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> @@ -907,6 +908,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: |