diff --git a/drivers/base/dd.c b/drivers/base/dd.c index e3e0d90d093f..fa27c8f1af95 100644 --- a/drivers/base/dd.c +++ b/drivers/base/dd.c @@ -326,7 +326,8 @@ void deferred_probe_extend_timeout(void) * If the work hasn't been queued yet or if the work expired, don't * start a new one. */ - if (mod_delayed_work(system_wq, &deferred_probe_timeout_work, + if (delayed_work_pending(&deferred_probe_timeout_work) && + mod_delayed_work(system_wq, &deferred_probe_timeout_work, secs_to_jiffies(driver_deferred_probe_timeout))) pr_debug("Extended deferred probe timeout by %d secs\n", driver_deferred_probe_timeout);