lib/test_kho.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
From: Long Wei <longwei27@huawei.com>
During the initialization phase, the test_kho module invokes the
kho_preserve_folio function, which internally configures bitmaps
within kho_mem_track and establishes chunk linked lists in KHO.
Upon unloading the test_kho module, it is necessary to clean up
these states.
Signed-off-by: Long Wei <longwei27@huawei.com>
---
lib/test_kho.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/lib/test_kho.c b/lib/test_kho.c
index 47de56280795..69230da5a056 100644
--- a/lib/test_kho.c
+++ b/lib/test_kho.c
@@ -339,11 +339,15 @@ module_init(kho_test_init);
static void kho_test_cleanup(void)
{
+ /* unpreserve and free the data stored in folios */
+ kho_test_unpreserve_data(&kho_test_state);
for (int i = 0; i < kho_test_state.nr_folios; i++)
folio_put(kho_test_state.folios[i]);
kvfree(kho_test_state.folios);
- vfree(kho_test_state.folios_info);
+
+ /* Unpreserve and release the FDT folio */
+ kho_unpreserve_folio(kho_test_state.fdt);
folio_put(kho_test_state.fdt);
}
--
2.43.0
On Wed, Jan 07 2026, l00580197 wrote: > From: Long Wei <longwei27@huawei.com> > > During the initialization phase, the test_kho module invokes the > kho_preserve_folio function, which internally configures bitmaps > within kho_mem_track and establishes chunk linked lists in KHO. > Upon unloading the test_kho module, it is necessary to clean up > these states. > > Signed-off-by: Long Wei <longwei27@huawei.com> Reviewed-by: Pratyush Yadav <pratyush@kernel.org> [...] -- Regards, Pratyush Yadav
On Wed, Jan 07, 2026 at 10:24:27AM +0800, l00580197 wrote:
> From: Long Wei <longwei27@huawei.com>
>
> During the initialization phase, the test_kho module invokes the
> kho_preserve_folio function, which internally configures bitmaps
> within kho_mem_track and establishes chunk linked lists in KHO.
> Upon unloading the test_kho module, it is necessary to clean up
> these states.
>
> Signed-off-by: Long Wei <longwei27@huawei.com>
Acked-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
> ---
> lib/test_kho.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/lib/test_kho.c b/lib/test_kho.c
> index 47de56280795..69230da5a056 100644
> --- a/lib/test_kho.c
> +++ b/lib/test_kho.c
> @@ -339,11 +339,15 @@ module_init(kho_test_init);
>
> static void kho_test_cleanup(void)
> {
> + /* unpreserve and free the data stored in folios */
> + kho_test_unpreserve_data(&kho_test_state);
> for (int i = 0; i < kho_test_state.nr_folios; i++)
> folio_put(kho_test_state.folios[i]);
>
> kvfree(kho_test_state.folios);
> - vfree(kho_test_state.folios_info);
> +
> + /* Unpreserve and release the FDT folio */
> + kho_unpreserve_folio(kho_test_state.fdt);
> folio_put(kho_test_state.fdt);
> }
>
> --
> 2.43.0
>
--
Sincerely yours,
Mike.
© 2016 - 2026 Red Hat, Inc.