staging: greybus: arche-platform: fix device reference leak
authorJohan Hovold <johan@kernel.org>
Tue, 1 Nov 2016 10:55:02 +0000 (11:55 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 7 Nov 2016 10:45:42 +0000 (11:45 +0100)
Make sure to drop the device reference taken by of_find_device_by_node()
before returning from arche_platform_change_state().

Note that this code is expected to be removed, but let's fix up the leak
nonetheless.

Fixes: 886aba558b9e ("greybus: arche-platform: Export fn to allow...")
Signed-off-by: Johan Hovold <johan@kernel.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Vaibhav Hiremath <hvaibhav.linux@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/greybus/arche-platform.c

index 34307ac3f2558b1e30794bd77c7c2b85ae4839e3..d33d6fe078ad730ae3cdb4c7d9291c23d3711397 100644 (file)
@@ -186,6 +186,7 @@ int arche_platform_change_state(enum arche_platform_state state,
 exit:
        spin_unlock_irqrestore(&arche_pdata->wake_lock, flags);
        mutex_unlock(&arche_pdata->platform_state_mutex);
+       put_device(&pdev->dev);
        of_node_put(np);
        return ret;
 }