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
next prev parent 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).