kref: double kref_put() in my_data_handler()
Roel Kluin [Fri, 18 Sep 2009 02:26:04 +0000 (19:26 -0700)]
The kref_put() already occurs after the out label

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Documentation/kref.txt

index 130b6e8..ae203f9 100644 (file)
@@ -84,7 +84,6 @@ int my_data_handler(void)
        task = kthread_run(more_data_handling, data, "more_data_handling");
        if (task == ERR_PTR(-ENOMEM)) {
                rv = -ENOMEM;
-               kref_put(&data->refcount, data_release);
                goto out;
        }