[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] xen-acpi-processor: (CX): Hypervisor error (-38) for ACPI CPU



On 03/19/14 16:20, Konrad Rzeszutek Wilk wrote:
On Wed, Mar 19, 2014 at 08:07:59PM +0000, Andrew Cooper wrote:
On 19/03/14 20:04, Konrad Rzeszutek Wilk wrote:
On Wed, Mar 19, 2014 at 03:44:13PM -0400, Don Slutz wrote:
I just noticed these messages from a 4.5-unstable build (a03984e + xenctx 
changes):

(XEN) Xen version 4.5-unstable (don@xxxxxxxxxxxxxxxxxxxxxxxxx) (gcc (GCC) 4.7.2 
20120921 (Red Hat 4.7.2-2)) debug=y Tue Mar 18 14:00:04 EDT 2014
(XEN) Latest ChangeSet: Thu Dec 12 19:17:03 2013 +0000 git:a03984e
...
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479270] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU1
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479328] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU2
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479346] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU3
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479366] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU4
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479381] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU5
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479398] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU6
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479411] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU7
Mar 19 15:31:16 dcs-xen-54 kernel: [   92.479427] xen-acpi-processor: (CX): 
Hypervisor error (-38) for ACPI CPU8


This related to no-cpuidle that I have specified.  Is this a bug or is it 
expected?
Does this fix it for you (inline and attached)?

Thanks for the quick response. My 1st attempt to build linux 3.14.0-rc7+ does not boot under xen:


(XEN) mcheck_poll: Machine check polling timer started.
(XEN) *** LOADING DOMAIN 0 ***
(XEN) elf_parse_binary: phdr: paddr=0x1000000 memsz=0xada000
(XEN) elf_parse_binary: phdr: paddr=0x1c00000 memsz=0xfa0f0
(XEN) elf_parse_binary: phdr: paddr=0x1cfb000 memsz=0x13d00
(XEN) elf_parse_binary: phdr: paddr=0x1d0f000 memsz=0x2ed000
(XEN) elf_parse_binary: memory: 0x1000000 -> 0x1ffc000
(XEN) elf_xen_note_check: ERROR: Will only load images built for the generic loader or Linux images (Not '' and '')
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Could not set up DOM0 guest OS
(XEN) ****************************************
(XEN)
(XEN) Reboot in five seconds...


Clearly what I did to build it was incorrect. Will poke around and try to figure out what I have done wrong.

    -Don Slutz



 From 3b2c8fd5e3a8722983f93e790d609d0d5b38054b Mon Sep 17 00:00:00 2001
From: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Date: Wed, 19 Mar 2014 16:03:23 -0400
Subject: [PATCH] xen-acpi-processor: Don't display errors when we get -ENOSYS

which is a perfectly legal error. This can be triggered if the
user has booted Xen with the no-cpuidle parameter.

Reported-by: Don Slutz <dslutz@xxxxxxxxxxx>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
An ENOSYS should imply that dom0 shouldn't try setting any further CPUs
worth of information.
The return value is still returned it is just not spamming the console.
~Andrew

---
  drivers/xen/xen-acpi-processor.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/xen-acpi-processor.c b/drivers/xen/xen-acpi-processor.c
index 82358d1..59fc190 100644
--- a/drivers/xen/xen-acpi-processor.c
+++ b/drivers/xen/xen-acpi-processor.c
@@ -127,7 +127,7 @@ static int push_cxx_to_hypervisor(struct acpi_processor 
*_pr)
                        pr_debug("     C%d: %s %d uS\n",
                                 cx->type, cx->desc, (u32)cx->latency);
                }
-       } else if (ret != -EINVAL)
+       } else if ((ret != -EINVAL) && (ret != -ENOSYS))
                /* EINVAL means the ACPI ID is incorrect - meaning the ACPI
                 * table is referencing a non-existing CPU - which can happen
                 * with broken ACPI tables. */
@@ -259,7 +259,7 @@ static int push_pxx_to_hypervisor(struct acpi_processor 
*_pr)
                        (u32) perf->states[i].power,
                        (u32) perf->states[i].transition_latency);
                }
-       } else if (ret != -EINVAL)
+       } else if ((ret != -EINVAL) && (ret != -ENOSYS))
                /* EINVAL means the ACPI ID is incorrect - meaning the ACPI
                 * table is referencing a non-existing CPU - which can happen
                 * with broken ACPI tables. */


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.