summaryrefslogtreecommitdiff
path: root/samples/damon/prcl.c
diff options
context:
space:
mode:
Diffstat (limited to 'samples/damon/prcl.c')
-rw-r--r--samples/damon/prcl.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/samples/damon/prcl.c b/samples/damon/prcl.c
index 1b839c06a612..b7c50f2656ce 100644
--- a/samples/damon/prcl.c
+++ b/samples/damon/prcl.c
@@ -122,8 +122,6 @@ static void damon_sample_prcl_stop(void)
}
}
-static bool init_called;
-
static int damon_sample_prcl_enable_store(
const char *val, const struct kernel_param *kp)
{
@@ -137,6 +135,9 @@ static int damon_sample_prcl_enable_store(
if (enabled == is_enabled)
return 0;
+ if (!damon_initialized())
+ return 0;
+
if (enabled) {
err = damon_sample_prcl_start();
if (err)
@@ -151,7 +152,12 @@ static int __init damon_sample_prcl_init(void)
{
int err = 0;
- init_called = true;
+ if (!damon_initialized()) {
+ if (enabled)
+ enabled = false;
+ return -ENOMEM;
+ }
+
if (enabled) {
err = damon_sample_prcl_start();
if (err)