On Wed, 18 May 2022 at 03:03, Jackie Liu <liu.yun@xxxxxxxxx> wrote: > > From: Jackie Liu <liuyun01@xxxxxxxxxx> > > By printing information, we can friendly prompt the status change > information of kfence by dmesg and record by syslog. > > Co-developed-by: Marco Elver <elver@xxxxxxxxxx> > Signed-off-by: Jackie Liu <liuyun01@xxxxxxxxxx> > --- > v1->v2: > fixup by Marco Elver <elver@xxxxxxxxxx> > v2->v3: > write kfence_enabled=false only true before > > mm/kfence/core.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/mm/kfence/core.c b/mm/kfence/core.c > index 11a954763be9..41840b8d9cb3 100644 > --- a/mm/kfence/core.c > +++ b/mm/kfence/core.c > @@ -67,8 +67,13 @@ static int param_set_sample_interval(const char *val, const struct kernel_param > if (ret < 0) > return ret; > > - if (!num) /* Using 0 to indicate KFENCE is disabled. */ > - WRITE_ONCE(kfence_enabled, false); > + /* Using 0 to indicate KFENCE is disabled. */ > + if (!num) { > + if (READ_ONCE(kfence_enabled)) { Now you could just write if (!num && READ_ONCE(kfence_enabled)) { .... > + pr_info("disabled\n"); > + WRITE_ONCE(kfence_enabled, false); > + } > + } > > *((unsigned long *)kp->arg) = num; > > @@ -874,6 +879,7 @@ static int kfence_enable_late(void) > > WRITE_ONCE(kfence_enabled, true); > queue_delayed_work(system_unbound_wq, &kfence_timer, 0); > + pr_info("re-enabled\n"); > return 0; > } > > -- > 2.25.1 >