mbox series

[v5,0/2] sh: Restructure setup code to reserve memory regions earlier

Message ID 20240718021822.1545976-1-quic_obabatun@quicinc.com (mailing list archive)
Headers show
Series sh: Restructure setup code to reserve memory regions earlier | expand

Message

Oreoluwa Babatunde July 18, 2024, 2:18 a.m. UTC
The unflatten_devicetree() function allocates memory from memblock
before the system gets a chance to set aside the regions of memory that
are meant to be reserved.
This means that there is a possibility for memblock to allocate from
these regions, thereby preventing them from being reserved.

This series makes changes to the arch specific setup code to call the
functions responsible for setting aside the reserved memory regions
earlier in the init sequence.

Hence, by the time memblock starts being used to allocate memory, the
memory regions that are meant to be carved out would already be set aside.

Oreoluwa Babatunde (2):
  sh: Restructure call site for early_reserve_mem()
  sh: Restructure setup code to reserve memory regions earlier

 arch/sh/include/asm/mmu.h |  1 +
 arch/sh/kernel/setup.c    |  3 +++
 arch/sh/mm/init.c         | 20 +++++++++-----------
 3 files changed, 13 insertions(+), 11 deletions(-)

Comments

John Paul Adrian Glaubitz Sept. 26, 2024, 12:41 p.m. UTC | #1
Hi Oreoluwa,

On Wed, 2024-07-17 at 19:18 -0700, Oreoluwa Babatunde wrote:
> The unflatten_devicetree() function allocates memory from memblock
> before the system gets a chance to set aside the regions of memory that
> are meant to be reserved.
> This means that there is a possibility for memblock to allocate from
> these regions, thereby preventing them from being reserved.
> 
> This series makes changes to the arch specific setup code to call the
> functions responsible for setting aside the reserved memory regions
> earlier in the init sequence.
> 
> Hence, by the time memblock starts being used to allocate memory, the
> memory regions that are meant to be carved out would already be set aside.
> 
> Oreoluwa Babatunde (2):
>   sh: Restructure call site for early_reserve_mem()
>   sh: Restructure setup code to reserve memory regions earlier
> 
>  arch/sh/include/asm/mmu.h |  1 +
>  arch/sh/kernel/setup.c    |  3 +++
>  arch/sh/mm/init.c         | 20 +++++++++-----------
>  3 files changed, 13 insertions(+), 11 deletions(-)

Apologies for the long silence. Both Artur and Geert (CC'ed) now also own a
J2 Turtleboard and I would like to have at least either of them test and
review your changes to make sure nothing breaks.

Thanks,
Adrian