[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cf189103-5b42-cf82-41b7-d73df2e34d0f@csgroup.eu>
Date: Wed, 13 Sep 2023 06:33:51 +0000
From: Christophe Leroy <christophe.leroy@...roup.eu>
To: "paulmck@...nel.org" <paulmck@...nel.org>,
"Liam R. Howlett" <Liam.Howlett@...cle.com>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Andrew Morton <akpm@...ux-foundation.org>,
"maple-tree@...ts.infradead.org" <maple-tree@...ts.infradead.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"stable@...r.kernel.org" <stable@...r.kernel.org>,
"linux-renesas-soc@...r.kernel.org"
<linux-renesas-soc@...r.kernel.org>,
Shanker Donthineni <sdonthineni@...dia.com>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH v2 1/2] maple_tree: Disable mas_wr_append() when other
readers are possible
Le 12/09/2023 à 19:02, Christophe Leroy a écrit :
>
>
> Le 12/09/2023 à 18:49, Paul E. McKenney a écrit :
>> On Tue, Sep 12, 2023 at 11:44:23AM -0400, Liam R. Howlett wrote:
>>>> So my question is why is it useful to setup interrupts that early, given
>>>> that interrupts cannot possibly happen until the boot CPU enables them?
>>>
>>> I don't know for sure, but there are 'preallocated IRQs' which end up
>>> grouped 0-15, then I see another one added at 55 after the mpic console
>>> output. I suspect it's so that they can be added as they are discovered
>>> during early boot?
>>
>> Christophe argues that the interrupt stacks must be allocated early
>> on, and that this acquires a mutex.
>>
>
> Well, we can probably allocate them later than it is today.
>
> In commit 547db12fd8a0 ("powerpc/32: Use vmapped stacks for interrupts")
> I already pushed the allocation at a later stage than it initialy was.
>
> We can probably do it later if it helps, however it definitely needs to
> be done before enabling IRQs for obvious reasons, so it is a problem
> that alloc_vm_stack() calling __vmalloc_node() enables IRQs.
For FWIW, looks like arm32 is doing similar so the problem is likely to
happen for them too. For that both CONFIG_IRQSTACKS and
CONFIG_VMAP_STACK must be set it seems.
Christophe
Powered by blists - more mailing lists