From: Yong Zhang <yong.zhang0@gmail.com>
To: linux-mips@linux-mips.org, linux-kernel@vger.kernel.org
Cc: ralf@linux-mips.org, sshtylyov@mvista.com, david.daney@cavium.com
Subject: [V1 PATCH 0/8] patchset focus on MIPS SMP woes
Date: Mon, 21 May 2012 14:00:00 +0800 [thread overview]
Message-ID: <1337580008-7280-1-git-send-email-yong.zhang0@gmail.com> (raw)
Changes from V0:
a) Fix grammar and add summary for commit reference; (Sergei Shtylyov)
b) Collect Acks
Since commit 5fbd036b [sched: Cleanup cpu_active madness] and
commit 2baab4e9 [sched: Fix select_fallback_rq() vs cpu_active/cpu_online],
it's more safe to put notify_cpu_starting() and set_cpu_online() with
irq disabled, otherwise we will have a typical race condition which
above two commits try to resolve:
CPU1 CPU2
__cpu_up();
mp_ops->boot_secondary();
start_secondary();
->init_secondary();
local_irq_enable();
<IRQ>
do something;
wake up softirqd;
try_to_wake_up();
select_fallback_rq();
/* select wrong cpu */
set_cpu_online();
This patchset fix the above issue as well as set_cpu_online is
called on the caller cpu.
BTW, I'm only running it on Cavium board because of limited source,
so if anyone is interested to test it on other board, that's great :)
Yong Zhang (8):
MIPS: Octeon: delay enable irq to ->smp_finish()
MIPS: BMIPS: delay irq enable to ->smp_finish()
MIPS: SMTC: delay irq enable to ->smp_finish()
MIPS: Yosemite: delay irq enable to ->smp_finish()
MIPS: call ->smp_finish() a little late
MIPS: call set_cpu_online() on the uping cpu with irq disabled
MIPS: smp: Warn on too early irq enable
MIPS: sync-r4k: remove redundant irq operation
arch/mips/cavium-octeon/smp.c | 2 +-
arch/mips/kernel/smp-bmips.c | 14 +++++++-------
arch/mips/kernel/smp.c | 12 +++++++++---
arch/mips/kernel/smtc.c | 3 ++-
arch/mips/kernel/sync-r4k.c | 5 -----
arch/mips/pmc-sierra/yosemite/smp.c | 2 +-
6 files changed, 20 insertions(+), 18 deletions(-)
--
1.7.5.4
next reply other threads:[~2012-05-21 6:00 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-21 6:00 Yong Zhang [this message]
2012-05-21 6:00 ` [PATCH 1/8] MIPS: Octeon: delay enable irq to ->smp_finish() Yong Zhang
2012-05-21 6:00 ` [PATCH 2/8] MIPS: BMIPS: delay irq enable " Yong Zhang
2012-05-21 6:00 ` [PATCH 3/8] MIPS: SMTC: " Yong Zhang
2012-05-21 6:00 ` [PATCH 4/8] MIPS: Yosemite: " Yong Zhang
2012-05-21 6:00 ` [PATCH 5/8] MIPS: call ->smp_finish() a little late Yong Zhang
2012-05-21 6:00 ` [PATCH 6/8] MIPS: call set_cpu_online() on the uping cpu with irq disabled Yong Zhang
2012-05-21 10:30 ` Sergei Shtylyov
2012-05-22 5:33 ` Yong Zhang
2012-05-21 10:39 ` Srivatsa S. Bhat
2012-05-22 6:21 ` Yong Zhang
2012-05-28 12:04 ` Srivatsa S. Bhat
2012-05-29 6:52 ` Yong Zhang
2012-05-21 6:00 ` [PATCH 7/8] MIPS: smp: Warn on too early irq enable Yong Zhang
2012-05-21 6:00 ` [PATCH 8/8] MIPS: sync-r4k: remove redundant irq operation Yong Zhang
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=1337580008-7280-1-git-send-email-yong.zhang0@gmail.com \
--to=yong.zhang0@gmail.com \
--cc=david.daney@cavium.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@linux-mips.org \
--cc=ralf@linux-mips.org \
--cc=sshtylyov@mvista.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
all inboxes | Powered by JetHome®