cpuidle-haltpoll: do not set an owner to allow modunload
authorJoao Martins <joao.m.martins@oracle.com>
Sat, 7 Sep 2019 23:45:24 +0000 (00:45 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 11 Sep 2019 15:36:30 +0000 (17:36 +0200)
cpuidle-haltpoll can be built as a module to allow optional late load.
Given we are setting @owner to THIS_MODULE, cpuidle will attempt to grab a
module reference every time a cpuidle_device is registered -- so
essentially all online cpus get a reference.

This prevents for the module to be unloaded later, which makes the
module_exit callback entirely unused. Thus remove the @owner and allow
module to be unloaded.

Fixes: fa86ee90eb11 ("add cpuidle-haltpoll driver")
Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpuidle/cpuidle-haltpoll.c

index 7a0239ef717e9b497ba9ad3d4c94399da7c1215c..49a65c6fe91e3b0dfe5d1b910e9ff66e09fec4da 100644 (file)
@@ -35,7 +35,6 @@ static int default_enter_idle(struct cpuidle_device *dev,
 static struct cpuidle_driver haltpoll_driver = {
        .name = "haltpoll",
        .governor = "haltpoll",
-       .owner = THIS_MODULE,
        .states = {
                { /* entry 0 is for polling */ },
                {