mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
powerpc/ibmebus: Fix further device reference leaks
commit815a7141c4upstream. Make sure to drop any reference taken by bus_find_device() when creating devices during init and driver registration. Fixes:55347cc996("[POWERPC] ibmebus: Add device creation and bus probing based on of_device") Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
ae4c24b2d5
commit
25bba7152f
@@ -180,6 +180,7 @@ static int ibmebus_create_device(struct device_node *dn)
|
||||
static int ibmebus_create_devices(const struct of_device_id *matches)
|
||||
{
|
||||
struct device_node *root, *child;
|
||||
struct device *dev;
|
||||
int ret = 0;
|
||||
|
||||
root = of_find_node_by_path("/");
|
||||
@@ -188,9 +189,12 @@ static int ibmebus_create_devices(const struct of_device_id *matches)
|
||||
if (!of_match_node(matches, child))
|
||||
continue;
|
||||
|
||||
if (bus_find_device(&ibmebus_bus_type, NULL, child,
|
||||
ibmebus_match_node))
|
||||
dev = bus_find_device(&ibmebus_bus_type, NULL, child,
|
||||
ibmebus_match_node);
|
||||
if (dev) {
|
||||
put_device(dev);
|
||||
continue;
|
||||
}
|
||||
|
||||
ret = ibmebus_create_device(child);
|
||||
if (ret) {
|
||||
|
||||
Reference in New Issue
Block a user