diff --git a/lib/event/scheduler_static.c b/lib/event/scheduler_static.c index 854fd23e5..7465004e7 100644 --- a/lib/event/scheduler_static.c +++ b/lib/event/scheduler_static.c @@ -15,6 +15,9 @@ static int init_static(void) { + /* There is no scheduling perfomed by static scheduler, + * do not set the scheduling period. */ + spdk_scheduler_set_period(0); return 0; } diff --git a/module/event/subsystems/scheduler/scheduler.c b/module/event/subsystems/scheduler/scheduler.c index b2ad40410..4d4ba0ce2 100644 --- a/module/event/subsystems/scheduler/scheduler.c +++ b/module/event/subsystems/scheduler/scheduler.c @@ -19,9 +19,6 @@ scheduler_subsystem_init(void) if (spdk_scheduler_get() == NULL) { rc = spdk_scheduler_set("static"); } - if (spdk_scheduler_get_period() == 0) { - spdk_scheduler_set_period(SPDK_SEC_TO_USEC); - } spdk_subsystem_init_next(rc); } diff --git a/module/scheduler/dynamic/scheduler_dynamic.c b/module/scheduler/dynamic/scheduler_dynamic.c index 2844d563f..939c08709 100644 --- a/module/scheduler/dynamic/scheduler_dynamic.c +++ b/module/scheduler/dynamic/scheduler_dynamic.c @@ -244,6 +244,11 @@ init(void) return -ENOMEM; } + if (spdk_scheduler_get_period() == 0) { + /* set default scheduling period to one second */ + spdk_scheduler_set_period(SPDK_SEC_TO_USEC); + } + return 0; }