From: Andi Kleen <ak@suse.de>
To: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>,
Andrew Morton <akpm@osdl.org>, Andi Kleen <ak@suse.de>,
"Eric W. Biederman" <ebiederm@xmission.com>,
"Raj, Ashok" <ashok.raj@intel.com>,
Stephen Hemminger <shemminger@osdl.org>
Subject: Re: [PATCH] i386/x86_64: Don't IPI to offline cpus on shutdown
Date: Sun, 27 Nov 2005 14:58:33 +0100 [thread overview]
Message-ID: <20051127135833.GH20775@brahms.suse.de> (raw)
In-Reply-To: <Pine.LNX.4.61.0511270115020.20046@montezuma.fsmlabs.com>
On Sun, Nov 27, 2005 at 02:05:45AM -0800, Zwane Mwaikambo wrote:
> http://bugzilla.kernel.org/show_bug.cgi?id=5203
>
> There is a small race during SMP shutdown between the processor issuing
> the shutdown and the other processors clearing themselves off the
> cpu_online_map as they do this without using the normal cpu offline
> synchronisation. To avoid this we should wait for all the other processors
> to clear their corresponding bits and then proceed. This way we can safely
> make the cpu_online test in smp_send_reschedule, it's safe during normal
> runtime as smp_send_reschedule is called with a lock held / preemption
> disabled.
Looking at the backtrace in the bug - how can sys_reboot call do_exit???
I would say the problem is in whatever causes that. It shouldn't
do that. sys_reboot shouldn't schedule, it's that simple.
Your patch is just papering over that real bug.
Badness in send_IPI_mask_bitmask at arch/i386/kernel/smp.c:168
[<c0103cd7>] dump_stack+0x17/0x20
[<c0112286>] send_IPI_mask_bitmask+0x86/0x90
[<c0112689>] smp_send_reschedule+0x19/0x20
[<c0117e9b>] resched_task+0x6b/0x90
[<c01186cb>] try_to_wake_up+0x2db/0x310
[<c011872a>] wake_up_state+0xa/0x10
[<c012832b>] signal_wake_up+0x2b/0x40
[<c0128be0>] __group_complete_signal+0x210/0x250
[<c0128cb3>] __group_send_sig_info+0x93/0xd0
[<c0129561>] do_notify_parent+0xe1/0x1c0
[<c01206b6>] exit_notify+0x366/0x830
[<c0120e14>] do_exit+0x294/0x3a0
[<c012b5ef>] sys_reboot+0xcf/0x160
[<c0102ded>] syscall_call+0x7/0xb
-Andi
next prev parent reply other threads:[~2005-11-27 13:58 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-27 10:05 [PATCH] i386/x86_64: Don't IPI to offline cpus on shutdown Zwane Mwaikambo
2005-11-27 13:58 ` Andi Kleen [this message]
2005-11-27 14:14 ` Eric W. Biederman
2005-11-27 16:45 ` Zwane Mwaikambo
2005-11-28 2:27 ` Eric W. Biederman
2005-11-28 5:33 ` Andi Kleen
2005-11-28 17:29 ` Zwane Mwaikambo
[not found] ` <Pine.LNX.4.64.0512021221210.13220@montezuma.fsmlabs.com>
[not found] ` <m1iru7dlww.fsf@ebiederm.dsl.xmission.com>
[not found] ` <Pine.LNX.4.64.0512050014000.6637@montezuma.fsmlabs.com>
[not found] ` <m1zmncb0n5.fsf@ebiederm.dsl.xmission.com>
[not found] ` <Pine.LNX.4.64.0512072158500.2557@montezuma.fsmlabs.com>
[not found] ` <m1vey0azeu.fsf@ebiederm.dsl.xmission.com>
[not found] ` <Pine.LNX.4.64.0512072249000.2557@montezuma.fsmlabs.com>
2005-12-08 7:39 ` [PATCH] Don't attempt to power off if power off is not implemented Eric W. Biederman
1970-01-02 3:13 ` Pavel Machek
2005-12-14 17:12 ` Eric W. Biederman
2005-12-11 22:57 ` Paul Jackson
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=20051127135833.GH20775@brahms.suse.de \
--to=ak@suse.de \
--cc=akpm@osdl.org \
--cc=ashok.raj@intel.com \
--cc=ebiederm@xmission.com \
--cc=linux-kernel@vger.kernel.org \
--cc=shemminger@osdl.org \
--cc=zwane@arm.linux.org.uk \
/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