xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Juergen Gross <juergen.gross@ts.fujitsu.com>
To: Keir Fraser <keir@xen.org>
Cc: xen-devel@lists.xensource.com
Subject: Re: [PATCH] Allow ACPI state change with active cpupools
Date: Tue, 20 Mar 2012 14:35:47 +0100	[thread overview]
Message-ID: <4F6887B3.1040806@ts.fujitsu.com> (raw)
In-Reply-To: <CB8E2DF7.3BFC8%keir@xen.org>

On 03/20/2012 01:52 PM, Keir Fraser wrote:
> That's quite a lot of bother. Firstly, this could probably be supported by a
> global system_state type of variable indicating whether we are booting,
> suspending, normal. Etc. Secondly I wonder whether you really need to care
> about this detail from within the cpupool code? When you offline a CPU in
> cpupool!=0, remember it. Put it back in the pool when it onlines, if the
> pool still exists. Don't prevent a pool from being destroyed just because it
> has offline cpus as members. Something like that? Or even always have the
> cpupool code put onlined cpus in pool 0, and have the acpi suspend code
> remember and restore pool memberships.

Hmm. Using a global variable seems to be hacky. I tried to find a clean solution
for the problem. If the changes are too big in your opinion, I'll try to handle
cpu offlining local to cpupools.

Thanks for your opinion,

Juergen

>   -- Keir
>
> On 20/03/2012 12:15, "Juergen Gross"<juergen.gross@ts.fujitsu.com>  wrote:
>
>> Changing the ACPI state (e.g. power off) while not all cpus are in cpupool 0
>> will currently crash the hypervisor during disabling the other cpus.
>> This patch avoids the crash by adding the reason for disabling a cpu (either
>> permanent e.g. in case of cpu hotplug or temporary in case of ACPI state
>> change).
>> This requires an additional parameter for cpu callbacks. All callbacks are
>> changed to take a structure as parameter instead of only the cpu number.
>>
>> Signed-off-by: Juergen Gross<juergen.gross@ts.fujitsu.com>
>>
>>
>> 25 files changed, 185 insertions(+), 139 deletions(-)
>> xen/arch/x86/acpi/cpu_idle.c                 |   13 ++++---
>> xen/arch/x86/cpu/mcheck/mce.c                |    8 ++--
>> xen/arch/x86/cpu/mcheck/mce_intel.c          |    8 ++--
>> xen/arch/x86/hvm/hvm.c                       |   10 ++---
>> xen/arch/x86/microcode.c                     |    6 +--
>> xen/arch/x86/nmi.c                           |   17 +++++----
>> xen/arch/x86/percpu.c                        |    8 ++--
>> xen/arch/x86/setup.c                         |    2 -
>> xen/arch/x86/smpboot.c                       |    8 ++--
>> xen/arch/x86/sysctl.c                        |    8 ++--
>> xen/arch/x86/x86_32/traps.c                  |    8 ++--
>> xen/common/cpu.c                             |   46 ++++++++++++++++----------
>> xen/common/cpupool.c                         |   17 ++++++---
>> xen/common/kexec.c                           |   13 ++++---
>> xen/common/rcupdate.c                        |   15 +++++---
>> xen/common/sched_credit2.c                   |    6 +--
>> xen/common/schedule.c                        |    8 ++--
>> xen/common/stop_machine.c                    |   17 +++++----
>> xen/common/tasklet.c                         |   19 ++++++----
>> xen/common/timer.c                           |   15 +++++---
>> xen/common/tmem_xen.c                        |   32 +++++++++---------
>> xen/common/trace.c                           |    6 +--
>> xen/drivers/cpufreq/cpufreq.c                |   15 +++++---
>> xen/drivers/cpufreq/cpufreq_misc_governors.c |    6 +--
>> xen/include/xen/cpu.h                        |   13 ++++++-
>>
>>
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@lists.xen.org
>> http://lists.xen.org/xen-devel
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
>
>


-- 
Juergen Gross                 Principal Developer Operating Systems
PDG ES&S SWE OS6                       Telephone: +49 (0) 89 3222 2967
Fujitsu Technology Solutions              e-mail: juergen.gross@ts.fujitsu.com
Domagkstr. 28                           Internet: ts.fujitsu.com
D-80807 Muenchen                 Company details: ts.fujitsu.com/imprint.html

  reply	other threads:[~2012-03-20 13:35 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-20 12:15 [PATCH] Allow ACPI state change with active cpupools Juergen Gross
2012-03-20 12:52 ` Keir Fraser
2012-03-20 13:35   ` Juergen Gross [this message]
2012-03-20 14:30     ` Keir Fraser
2012-03-20 14:46       ` Juergen Gross
2012-03-20 14:55         ` Keir Fraser
2012-03-21 13:46           ` Juergen Gross

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F6887B3.1040806@ts.fujitsu.com \
    --to=juergen.gross@ts.fujitsu.com \
    --cc=keir@xen.org \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).