Browse Source

coresight: release reference taken by 'bus_find_device()'

The reference count taken by function bus_find_device() needs
to be released if a child device is found, something this patch
is adding.

Reported-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Mathieu Poirier 9 years ago
parent
commit
f2dfab3568
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/hwtracing/coresight/coresight.c

+ 2 - 0
drivers/hwtracing/coresight/coresight.c

@@ -570,6 +570,8 @@ static void coresight_fixup_device_conns(struct coresight_device *csdev)
 
 
 		if (dev) {
 		if (dev) {
 			conn->child_dev = to_coresight_device(dev);
 			conn->child_dev = to_coresight_device(dev);
+			/* and put reference from 'bus_find_device()' */
+			put_device(dev);
 		} else {
 		} else {
 			csdev->orphan = true;
 			csdev->orphan = true;
 			conn->child_dev = NULL;
 			conn->child_dev = NULL;