From: Shyam Saini <shyamsaini@linux.microsoft.com>
To: shyamsaini@linux.microsoft.com, ardb@kernel.org,
catalin.marinas@arm.com, david@kernel.org,
linux-arm-kernel@lists.infradead.org, will@kernel.org
Cc: akpm@linux-foundation.org, bboscaccy@linux.microsoft.com,
bp@alien8.de, dapeng1.mi@linux.intel.com, ebiggers@kernel.org,
elver@google.com, enelsonmoore@gmail.com,
feng.tang@linux.alibaba.com, gpiccoli@igalia.com,
kees@kernel.org, kuba@kernel.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
lirongqing@baidu.com, peterz@infradead.org,
rdunlap@infradead.org, rppt@kernel.org,
tgopinath@linux.microsoft.com, tony.luck@intel.com
Subject: Re: [RFC v2 PATCH] reserve_mem: add support for static memory
Date: Tue, 30 Jun 2026 10:09:11 -0700 [thread overview]
Message-ID: <20260630170911.43521-1-shyamsaini@linux.microsoft.com> (raw)
In-Reply-To: <aj6SqipC/dIN01iN@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
Hi Everyone,
> On 25 Jun 2026 11:37, Mike Rapoport wrote:
> > Hi Shyam,
> >
> > On Wed, Jun 24, 2026 at 06:22:33PM -0700, Shyam Saini wrote:
> > > On 21 Jun 2026 13:36, Mike Rapoport wrote:
> > > > On Thu, Jun 18, 2026 at 11:23:31PM -0700, Shyam Saini wrote:
> > > > > reserve_mem relies on dynamic memory allocation, this limits the
> > > > > usecase where memory is required to be preserved across the boots.
> > > > > Eg: ramoops memory reservation on ACPI platforms
> > > > >
> > > > > So add support to pass a pre-determined static address and reserve
> > > > > memory at a specified location. This enables use case like ramoops
> > > > > on ACPI platforms to reliably access ramoops region with previous
> > > > > boot logs.
> > > > >
> > > > > Also skip the parsing of <align> when static address is passed.
> > > > >
> > > > > Example syntax for static address
> > > > > reserve_mem=4M@0x1E0000000:oops
> > > >
> > > > reserve_mem is best effort by design because such hacks as well as memmap=
> > > > cannot guarantee this memory is actually free.
> > > >
> > > > If you want to preserve ramoops reliably, use KHO with reserve_mem.
> > > > The first kernel will allocate memory, this memory will be preserved by KHO
> > > > and could be picked up by the second kernel.
> > >
> > > ok, On ARM64 DTS systems, we can reserve ramoops memory in the device tree during
> > > the warm reboot.
> >
> > The cc list actually implied x86 ;-)
> > Added arm64 folks now.
>
> Thanks for adding ARM folks, I had just included whatever get_maintainer script
> suggested, sorry.
> > > For an equivalent ARM64 ACPI platform, what is the recommended way to reserve
> > > and preserve that memory across the boots?
> >
> > I don't think it exists, but a command line option (be it memmap= or
> > reserve_mem=) does not seem the right way to me.
> >
> > Most of the arguments that were made against adding memmap= to arm64 [1]
> > apply here.
> >
> > If kexec is an option, KHO provides a reliable way to preserve memory
> > across boots.
> >
> > If kexec is not an option, we should look for a generic way to specify
> > something like DT's reserved_mem for ACPI/EFI systems.
> >
> > [1] https://lkml.kernel.org/lkml/20201118063314.22940-1-song.bao.hua@hisilicon.com/T/
> >
> Well, kexec is one of the option for my use case, it also requires
> memory reservation during warm reboot, I think memory can be reserved in
> the firmware but this will create a dependency on firmware for Linux
> reservation.
>
> It would be great to have a in kernel memory reservation mechanism for
> ARM64 ACPI platforms. I believe some other use cases like PMEM
> reservation would also benefit from this.
>
Following up on this, As Mike pointed that reserve_mem is best effort
reservation mechanism, so what is the recommended reliable Linux
mechanism, if any, to reserve a predetermined memory range during
early boot on ARM64/ACPI platforms for warm boot scenarios? KHO is
one option, but I'm specifically looking for a solution that preserves
the region across warm reboots.
Please let me know.
Thanks,
Shyam
prev parent reply other threads:[~2026-06-30 17:09 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260619062331.348789-1-shyamsaini@linux.microsoft.com>
[not found] ` <aje-nY6QbwZP9XLG@kernel.org>
[not found] ` <ajyC2eX9MKSU84Z8@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
2026-06-25 8:37 ` [RFC v2 PATCH] reserve_mem: add support for static memory Mike Rapoport
2026-06-26 14:54 ` Shyam Saini
2026-06-30 17:09 ` Shyam Saini [this message]
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=20260630170911.43521-1-shyamsaini@linux.microsoft.com \
--to=shyamsaini@linux.microsoft.com \
--cc=akpm@linux-foundation.org \
--cc=ardb@kernel.org \
--cc=bboscaccy@linux.microsoft.com \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=dapeng1.mi@linux.intel.com \
--cc=david@kernel.org \
--cc=ebiggers@kernel.org \
--cc=elver@google.com \
--cc=enelsonmoore@gmail.com \
--cc=feng.tang@linux.alibaba.com \
--cc=gpiccoli@igalia.com \
--cc=kees@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lirongqing@baidu.com \
--cc=peterz@infradead.org \
--cc=rdunlap@infradead.org \
--cc=rppt@kernel.org \
--cc=tgopinath@linux.microsoft.com \
--cc=tony.luck@intel.com \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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