[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMo8BfLzV0Oe_i-QrMzE-BE028s6GNvOd827N5+tteELidjpvA@mail.gmail.com>
Date: Tue, 14 Feb 2023 11:48:41 -0800
From: Max Filippov <jcmvbkbc@...il.com>
To: Josh Poimboeuf <jpoimboe@...nel.org>
Cc: Philippe Mathieu-Daudé <philmd@...aro.org>,
linux-kernel@...r.kernel.org, jgross@...e.com,
richard.henderson@...aro.org, ink@...assic.park.msu.ru,
mattst88@...il.com, linux-alpha@...r.kernel.org,
linux@...linux.org.uk, linux-arm-kernel@...ts.infradead.org,
catalin.marinas@....com, will@...nel.org, guoren@...nel.org,
linux-csky@...r.kernel.org, linux-ia64@...r.kernel.org,
chenhuacai@...nel.org, kernel@...0n.name,
loongarch@...ts.linux.dev, f.fainelli@...il.com,
bcm-kernel-feedback-list@...adcom.com, tsbogend@...ha.franken.de,
linux-mips@...r.kernel.org, jiaxun.yang@...goat.com,
mpe@...erman.id.au, npiggin@...il.com, christophe.leroy@...roup.eu,
linuxppc-dev@...ts.ozlabs.org, ysato@...rs.sourceforge.jp,
dalias@...c.org, linux-sh@...r.kernel.org, davem@...emloft.net,
sparclinux@...r.kernel.org, tglx@...utronix.de, mingo@...hat.com,
bp@...en8.de, dave.hansen@...ux.intel.com, x86@...nel.org,
hpa@...or.com, chris@...kel.net, linux-xtensa@...ux-xtensa.org,
peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com,
rostedt@...dmis.org, bsegall@...gle.com, mgorman@...e.de,
bristot@...hat.com, vschneid@...hat.com, paulmck@...nel.org
Subject: Re: [PATCH v2 19/24] xtensa/cpu: Make sure cpu_die() doesn't return
On Tue, Feb 14, 2023 at 10:23 AM Josh Poimboeuf <jpoimboe@...nel.org> wrote:
> On Tue, Feb 14, 2023 at 08:55:32AM +0100, Philippe Mathieu-Daudé wrote:
> > Can you update the documentation along? Currently we have:
> >
> > /*
> > * Called from the idle thread for the CPU which has been shutdown.
> > *
> > * Note that we disable IRQs here, but do not re-enable them
> > * before returning to the caller. This is also the behaviour
> > * of the other hotplug-cpu capable cores, so presumably coming
> > * out of idle fixes this.
> > */
>
> void __ref cpu_die(void)
> {
> idle_task_exit();
> local_irq_disable();
> __asm__ __volatile__(
> " movi a2, cpu_restart\n"
> " jx a2\n");
>
> BUG();
> }
>
> Hm, not only is the comment wrong, but it seems to be branching to
> cpu_restart? That doesn't seem right at all.
Perhaps the name is a bit misleading. The CPU that enters 'cpu_restart'
loops there until a call to 'boot_secondary' releases it, after which it goes
to '_startup'. So it is a restart, but not immediate.
--
Thanks.
-- Max
Powered by blists - more mailing lists