WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] x86: Fix an S3 bug caused by x_firmware_w

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: Fix an S3 bug caused by x_firmware_waking_vector
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 15 May 2008 04:40:25 -0700
Delivery-date: Thu, 15 May 2008 04:41:11 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1210840680 -3600
# Node ID 29dc52031954896a407a97cba167c197f8e1c0ed
# Parent  9044705960cb30cec385bdca7305bcf7db096721
x86: Fix an S3 bug caused by x_firmware_waking_vector

According to ACPI spec., x_firmware_waking_vector in FACS is for
waking up in protected mode and firmware_waking_vector is for in real
mode. Xen once use x_firmware_waking_vector which can make S3 failed
on some platform. This patch fixed the bug by using non-x one.

Signed-off-by: Huacai Chen <huacai.chen@xxxxxxxxx>
---
 xen/arch/x86/acpi/boot.c |   14 +++-----------
 1 files changed, 3 insertions(+), 11 deletions(-)

diff -r 9044705960cb -r 29dc52031954 xen/arch/x86/acpi/boot.c
--- a/xen/arch/x86/acpi/boot.c  Thu May 15 09:36:38 2008 +0100
+++ b/xen/arch/x86/acpi/boot.c  Thu May 15 09:38:00 2008 +0100
@@ -441,17 +441,9 @@ acpi_fadt_parse_sleep_info(struct acpi_t
                        "FACS is shorter than ACPI spec allow: 0x%x",
                        facs->length);
 
-       if ((rsdp->revision < 2) || (facs->length < 32)) {
-               acpi_sinfo.wakeup_vector = facs_pa + 
-                       offsetof(struct acpi_table_facs,
-                                firmware_waking_vector);
-               acpi_sinfo.vector_width = 32;
-       } else {
-               acpi_sinfo.wakeup_vector = facs_pa +
-                       offsetof(struct acpi_table_facs,
-                                xfirmware_waking_vector);
-               acpi_sinfo.vector_width = 64;
-       }
+       acpi_sinfo.wakeup_vector = facs_pa + 
+               offsetof(struct acpi_table_facs, firmware_waking_vector);
+       acpi_sinfo.vector_width = 32;
 
        printk(KERN_INFO PREFIX
               "                 wakeup_vec[%"PRIx64"], vec_size[%x]\n",

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] x86: Fix an S3 bug caused by x_firmware_waking_vector, Xen patchbot-unstable <=