On 2022/1/24 16:25, Marco Elver wrote: > On Mon, 24 Jan 2022 at 03:37, 'Peng Liu' via kasan-dev > wrote: >> The parameter kfence_sample_interval can be set via boot parameter >> and late shell command. However, KFENCE test case just use compile >> time CONFIG_KFENCE_SAMPLE_INTERVAL, this will make KFENCE test case >> not run as user desired. This patch will make KFENCE test case >> compatible with run-time-set sample interval. >> >> Signed-off-by: Peng Liu >> --- >> include/linux/kfence.h | 2 ++ >> mm/kfence/core.c | 3 ++- >> mm/kfence/kfence_test.c | 8 ++++---- >> 3 files changed, 8 insertions(+), 5 deletions(-) >> >> diff --git a/include/linux/kfence.h b/include/linux/kfence.h >> index bf91b76b87ee..0fc913a7f017 100644 >> --- a/include/linux/kfence.h >> +++ b/include/linux/kfence.h >> @@ -19,6 +19,8 @@ >> >> extern bool kfence_enabled; >> extern unsigned long kfence_num_objects; >> +extern unsigned long kfence_sample_interval; >> + >> /* >> * We allocate an even number of pages, as it simplifies calculations to map >> * address to metadata indices; effectively, the very first page serves as an >> diff --git a/mm/kfence/core.c b/mm/kfence/core.c >> index 2301923182b8..e2fcae34cc84 100644 >> --- a/mm/kfence/core.c >> +++ b/mm/kfence/core.c >> @@ -50,7 +50,8 @@ >> >> bool kfence_enabled __read_mostly; >> >> -static unsigned long kfence_sample_interval __read_mostly = CONFIG_KFENCE_SAMPLE_INTERVAL; >> +unsigned long kfence_sample_interval __read_mostly = CONFIG_KFENCE_SAMPLE_INTERVAL; >> +EXPORT_SYMBOL(kfence_sample_interval); /* Export for test modules. */ > While it would make some situations more convenient, I've wanted to > avoid exporting a new symbol just for the test. And in most cases it > only makes sense to run the test on a custom debug kernel. > > Why do you need this? To automatically do more tests. > > Should you really need this, I suggest at least using > EXPORT_SYMBOL_GPL. Should you want it, you can resend this patch > standalone detached from the rest. > > Thanks, > -- Marco > . When KFENCE pool size can be adjusted by boot parameters(assumption), automatically test and train KFENCE may be useful. So far, exporting kfence.sample_interval is not necessary. Thanks, -- Peng Liu .