sparc/mm: export symbols for lazy_mmu_mode KUnit tests

The lazy_mmu_mode KUnit tests call lazy_mmu_mode_{enable,disable}.  These
tests may be built as a module, and because of inlining this means that
arch_{enter,flush,leave}_lazy_mmu_mode need to be exported.

[akpm@linux-foundation.org: remove mm/tests/lazy_mmu_mode_kunit.c comment, per Kevin]
Link: https://lkml.kernel.org/r/20251218100541.2667405-1-kevin.brodsky@arm.com
Fixes: ee628d9cc8 ("mm: add basic tests for lazy_mmu")
Signed-off-by: Kevin Brodsky <kevin.brodsky@arm.com>
Acked-by: Andreas Larsson <andreas@gaisler.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
Kevin Brodsky
2025-12-18 10:05:40 +00:00
committed by Andrew Morton
parent ed0a826ce3
commit 3a64d5b82e
2 changed files with 6 additions and 1 deletions

View File

@@ -11,6 +11,8 @@
#include <linux/preempt.h>
#include <linux/pagemap.h>
#include <kunit/visibility.h>
#include <asm/tlbflush.h>
#include <asm/cacheflush.h>
#include <asm/mmu_context.h>
@@ -54,6 +56,8 @@ void arch_enter_lazy_mmu_mode(void)
{
preempt_disable();
}
/* For lazy_mmu_mode KUnit tests */
EXPORT_SYMBOL_IF_KUNIT(arch_enter_lazy_mmu_mode);
void arch_flush_lazy_mmu_mode(void)
{
@@ -62,12 +66,14 @@ void arch_flush_lazy_mmu_mode(void)
if (tb->tlb_nr)
flush_tlb_pending();
}
EXPORT_SYMBOL_IF_KUNIT(arch_flush_lazy_mmu_mode);
void arch_leave_lazy_mmu_mode(void)
{
arch_flush_lazy_mmu_mode();
preempt_enable();
}
EXPORT_SYMBOL_IF_KUNIT(arch_leave_lazy_mmu_mode);
static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr,
bool exec, unsigned int hugepage_shift)

View File

@@ -2,7 +2,6 @@
#include <kunit/test.h>
#include <linux/pgtable.h>
/* For some symbols referenced by arch_{enter,leave}_lazy_mmu_mode on powerpc */
MODULE_IMPORT_NS("EXPORTED_FOR_KUNIT_TESTING");
static void expect_not_active(struct kunit *test)