From: jy0922.shim@samsung•com (Joonyoung Shim)
To: linux-arm-kernel@lists•infradead.org
Subject: ARM kexec SMP problem using exynos4210
Date: Wed, 11 Jan 2012 19:23:18 +0900 [thread overview]
Message-ID: <4F0D6316.4090800@samsung.com> (raw)
In-Reply-To: <20120111100623.GA27887@mudshark.cambridge.arm.com>
On 01/11/2012 07:06 PM, Will Deacon wrote:
> On Wed, Jan 11, 2012 at 08:35:41AM +0000, Joonyoung Shim wrote:
>> Hi,
> Hello [adding linux-arm-kernel],
>
>> I have tested kexec to Nuri board using Exynos4210(Dual-core ARM
>> Cortex-A9) on the latest mainline kernel but i am facing one problem.
>>
>> The kernel enabled SMP, kernel_kexec() calls machine_shutdown to stop
>> all cpus except current cpu and jumps to the new kernel but the kernel
>> is hanged soon.
>>
>> I used cpu_down(1) to make disabled cpu1 instead of smp_send_stop of
>> machine_shutdown and it is booted successfully to new kernel.
>>
>> Any ideas?
> I suspect that the secondary CPUs are not being parked correctly in the first
> kernel. For this, you need to implement platform_cpu_kill for your platform.
>
> Given that exynos just does:
>
> int platform_cpu_kill(unsigned int cpu)
> {
> return 1;
> }
>
> then I'm not surprised it doesn't work. Try adding something in there which puts
> the CPU into a state where it can be booted by the next kernel.
Thanks, i will try it.
One more question, generally boot cpu is first cpu(cpu0). If current
cpu is secondary cpu(cpu1), smp_send_stop of machine_shutdown will stop
first cpu and next kernel will try to boot on secondary cpu. Is it
possible?
> I considered adding a purely software mechanism for doing this (in fact, I
> prototyped something up on vexpress) but after discussions with some board
> maintainers it became clear that most SMP SoCs have hardware assists for
> hotplug, and the software approach is really only need for things like the
> ARM development boards.
>
> Will
>
next prev parent reply other threads:[~2012-01-11 10:23 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4F0D49DD.80305@samsung.com>
2012-01-11 10:06 ` ARM kexec SMP problem using exynos4210 Will Deacon
2012-01-11 10:23 ` Joonyoung Shim [this message]
2012-01-11 11:03 ` Will Deacon
2012-01-11 17:20 ` McClintock Matthew-B29882
2012-01-11 17:42 ` Will Deacon
2012-01-11 8:45 Joonyoung Shim
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=4F0D6316.4090800@samsung.com \
--to=jy0922.shim@samsung$(echo .)com \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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