Re: [PATCH v3] arm64/mm: avoid fixmap race condition when create pud mapping

From: Catalin Marinas
Date: Fri Jan 07 2022 - 05:54:05 EST


On Fri, Jan 07, 2022 at 09:10:57AM +0000, Jianyong Wu wrote:
> I roughly find the root cause.
> alloc_init_pud will be called at the very beginning of kernel boot in
> create_mapping_noalloc where no memory allocator is initialized. But
> lockdep check may need allocate memory. So, kernel take exception
> when acquire lock.(I have not found the exact code that cause this
> issue) that's say we may not be able to use a lock so early.

I couldn't find an slab or page allocation place either. It would be
nice to get to the root cause rather than just avoiding the mutex on the
early boot path.

--
Catalin