[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aL6xUMlRFSYm41uS@kernel.org>
Date: Mon, 8 Sep 2025 13:34:56 +0300
From: Mike Rapoport <rppt@...nel.org>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Alexander Graf <graf@...zon.com>, Baoquan He <bhe@...hat.com>,
Changyuan Lyu <changyuanl@...gle.com>, Chris Li <chrisl@...nel.org>,
Jason Gunthorpe <jgg@...dia.com>,
Pasha Tatashin <pasha.tatashin@...een.com>,
Pratyush Yadav <pratyush@...nel.org>, kexec@...ts.infradead.org,
linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 0/2] kho: add support for preserving vmalloc
allocations
Argh, I've messed up the posting :(
Sorry for the noise.
On Sun, Sep 07, 2025 at 10:00:17AM +0300, Mike Rapoport wrote:
> From: "Mike Rapoport (Microsoft)" <rppt@...nel.org>
>
> Hi,
>
> Following the discussion about preservation of memfd with LUO [1] these
> patches add support for preserving vmalloc allocations.
>
> Any KHO uses case presumes that there's a data structure that lists
> physical addresses of preserved folios (and potentially some additional
> metadata). Allowing vmalloc preservations with KHO allows scalable
> preservation of such data structures.
>
> For instance, instead of allocating array describing preserved folios in
> the fdt, memfd preservation can use vmalloc:
>
> preserved_folios = vmalloc_array(nr_folios, sizeof(*preserved_folios));
> memfd_luo_preserve_folios(preserved_folios, folios, nr_folios);
> kho_preserve_vmalloc(preserved_folios, &folios_info);
>
> [1] https://lore.kernel.org/all/20250807014442.3829950-30-pasha.tatashin@soleen.com
>
> v2 changes:
> * support preservation of vmalloc backed by large pages
> * add check for supported vmalloc flags and preserve the flags to be
> able to identify incompatible preservations
> * don't use kho_preserve_phys()
> * add kernel-doc
>
> v1: https://lore.kernel.org/all/20250903063018.3346652-1-rppt@kernel.org
>
> Mike Rapoport (Microsoft) (2):
> kho: add support for preserving vmalloc allocations
> lib/test_kho: use kho_preserve_vmalloc instead of storing addresses in fdt
>
> include/linux/kexec_handover.h | 12 ++
> kernel/kexec_handover.c | 200 +++++++++++++++++++++++++++++++++
> lib/test_kho.c | 30 +++--
> 3 files changed, 235 insertions(+), 7 deletions(-)
>
>
> base-commit: b320789d6883cc00ac78ce83bccbfe7ed58afcf0
> --
> 2.50.1
>
--
Sincerely yours,
Mike.
Powered by blists - more mailing lists