[PATCH 1/3] kho: Add kunit static stubs
Samiullah Khawaja
skhawaja at google.com
Mon May 18 12:12:05 PDT 2026
Hi Mike,
On Sat, May 16, 2026 at 10:39:43AM +0300, Mike Rapoport wrote:
>Hi Sami,
>
>On Tue, May 12, 2026 at 07:51:33PM +0000, Samiullah Khawaja wrote:
>> Add kunit stubs in kho_restore_folio() and kho_restore_pages() so the
>> users can mock these functions in kunit tests.
>>
>> Signed-off-by: Samiullah Khawaja <skhawaja at google.com>
>> ---
>> kernel/liveupdate/kexec_handover.c | 9 ++++++++-
>> 1 file changed, 8 insertions(+), 1 deletion(-)
>>
>> diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
>> index d5718bef6d4d..1375291d9b07 100644
>> --- a/kernel/liveupdate/kexec_handover.c
>> +++ b/kernel/liveupdate/kexec_handover.c
>> @@ -11,6 +11,7 @@
>> #define pr_fmt(fmt) "KHO: " fmt
>>
>> #include <linux/cleanup.h>
>> +#include <kunit/static_stub.h>
>
>Can we include kunit headers before linux headers?
Agreed. I will update this in next revision.
>
>> #include <linux/cma.h>
>> #include <linux/kmemleak.h>
>> #include <linux/count_zeros.h>
>> @@ -437,7 +438,11 @@ static struct page *kho_restore_page(phys_addr_t phys, bool is_folio)
>> */
>> struct folio *kho_restore_folio(phys_addr_t phys)
>> {
>> - struct page *page = kho_restore_page(phys, true);
>> + struct page *page;
>> +
>> + KUNIT_STATIC_STUB_REDIRECT(kho_restore_folio, phys);
>> +
>> + page = kho_restore_page(phys, true);
>>
>> return page ? page_folio(page) : NULL;
>> }
>> @@ -459,6 +464,8 @@ struct page *kho_restore_pages(phys_addr_t phys, unsigned long nr_pages)
>> const unsigned long end_pfn = start_pfn + nr_pages;
>> unsigned long pfn = start_pfn;
>>
>> + KUNIT_STATIC_STUB_REDIRECT(kho_restore_pages, phys, nr_pages);
>> +
>> while (pfn < end_pfn) {
>> const unsigned int order =
>> min(count_trailing_zeros(pfn), ilog2(end_pfn - pfn));
>> --
>> 2.54.0.563.g4f69b47b94-goog
>>
>
>--
>Sincerely yours,
>Mike.
Thanks,
Sami
More information about the kexec
mailing list