From: Jason Gunthorpe <jgg@nvidia.com>
To: Andrey Ryabinin <ryabinin.a.a@gmail.com>
Cc: Andrey Ryabinin <arbn@yandex-team.com>,
linux-kernel@vger.kernel.org, Alexander Graf <graf@amazon.com>,
Mike Rapoport <rppt@kernel.org>,
James Gowans <jgowans@amazon.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-mm@kvack.org, Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
Baoquan He <bhe@redhat.com>,
kexec@lists.infradead.org, Pratyush Yadav <ptyadav@amazon.de>,
Pasha Tatashin <pasha.tatashin@soleen.com>,
David Rientjes <rientjes@google.com>,
Pratyush Yadav <pratyush@kernel.org>,
Changyuan Lyu <changyuanl@google.com>,
Jonathan Corbet <corbet@lwn.net>,
linux-doc@vger.kernel.org, Chris Li <chrisl@kernel.org>,
Ashish.Kalra@amd.com, William Tu <witu@nvidia.com>,
David Matlack <dmatlack@google.com>
Subject: Re: [PATCH v3 6/7] mm/memblock: Use KSTATE instead of kho to preserve preserved_mem_table
Date: Thu, 18 Sep 2025 20:14:19 -0300 [thread overview]
Message-ID: <20250918231419.GQ1391379@nvidia.com> (raw)
In-Reply-To: <893401bc-4754-4c67-a82a-0c49c8e7f447@gmail.com>
On Thu, Sep 18, 2025 at 09:00:31PM +0200, Andrey Ryabinin wrote:
> By contrast, KSTATE centralizes this logic. It avoids duplicating code
> and lets us express the preservation details declaratively instead
> of re-implementing them per struct.
I didn't really see it centralize much of anything, it is just a long
way to spell "memcpy" the way it is being shown here.
I'm all for consolidating, but please do actually show some
consolidation..
> On the versioning side:
> With this approach, introducing a new ABI version (say, abi_map_v1)
> would require us to maintain restore logic for each supported version,
> and carefully handle upgrades between them.
Yes, you MUST do this. It cannot be magically avoided.
> With KSTATE, versioning is built in. For example, adding a new field can
> simply be expressed as:
No, it isn't. The code still has to process versions and still has to
understand what to do when the unpacked struct didn't have its fields
written.
If anything it is making it more obfuscated and complicated to tell if
the comparability is done correctly or not.
Jason
next prev parent reply other threads:[~2025-09-18 23:14 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-09 20:14 [PATCH v3 0/7] KSTATE: [de]serialization framework for KHO Andrey Ryabinin
2025-09-09 20:14 ` [PATCH v3 1/7] kho: move fdt setup in separate helper Andrey Ryabinin
2025-09-09 20:14 ` [PATCH v3 2/7] kho: move scratch memory " Andrey Ryabinin
2025-09-09 20:14 ` [PATCH v3 3/7] kstate: Add KSTATE - [de]serialization framework for KHO Andrey Ryabinin
2025-09-09 20:14 ` [PATCH v3 4/7] kho: replace KHO FDT with kstate metadata Andrey Ryabinin
2025-09-10 16:50 ` Rob Herring
2025-09-11 16:54 ` Andrey Ryabinin
2025-09-09 20:14 ` [PATCH v3 5/7] kstate, test: add test module for testing kstate subsystem Andrey Ryabinin
2025-09-10 0:33 ` Randy Dunlap
2025-09-11 17:00 ` Andrey Ryabinin
2025-09-09 20:14 ` [PATCH v3 6/7] mm/memblock: Use KSTATE instead of kho to preserve preserved_mem_table Andrey Ryabinin
2025-09-15 11:47 ` Jason Gunthorpe
2025-09-18 19:00 ` Andrey Ryabinin
2025-09-18 23:14 ` Jason Gunthorpe [this message]
2025-09-09 20:14 ` [PATCH v3 7/7] Documentation, kstate: Add KSTATE documentation Andrey Ryabinin
2025-09-10 0:53 ` Bagas Sanjaya
2025-09-11 17:07 ` Andrey Ryabinin
2025-09-10 1:00 ` Randy Dunlap
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=20250918231419.GQ1391379@nvidia.com \
--to=jgg@nvidia.com \
--cc=Ashish.Kalra@amd.com \
--cc=akpm@linux-foundation.org \
--cc=arbn@yandex-team.com \
--cc=bhe@redhat.com \
--cc=bp@alien8.de \
--cc=changyuanl@google.com \
--cc=chrisl@kernel.org \
--cc=corbet@lwn.net \
--cc=dave.hansen@linux.intel.com \
--cc=dmatlack@google.com \
--cc=graf@amazon.com \
--cc=hpa@zytor.com \
--cc=jgowans@amazon.com \
--cc=kexec@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mingo@redhat.com \
--cc=pasha.tatashin@soleen.com \
--cc=pratyush@kernel.org \
--cc=ptyadav@amazon.de \
--cc=rientjes@google.com \
--cc=rppt@kernel.org \
--cc=ryabinin.a.a@gmail.com \
--cc=tglx@linutronix.de \
--cc=witu@nvidia.com \
--cc=x86@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;
as well as URLs for NNTP newsgroup(s).