summaryrefslogtreecommitdiff
path: root/drivers/s390/cio
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-11-18 21:37:07 +0100
committerIngo Molnar <mingo@elte.hu>2008-11-18 21:37:07 +0100
commit5177dc3f2b3220b2dcfcf35eb9e6ec53ee818231 (patch)
tree29dd80a7b33426d0890aa07b5864224557c62af7 /drivers/s390/cio
parent0bb943c7a2136716757a263f604d26309fd98042 (diff)
parent7f0f598a0069d1ab072375965a4b69137233169c (diff)
Merge branch 'linus' into tracing/urgent
Diffstat (limited to 'drivers/s390/cio')
-rw-r--r--drivers/s390/cio/device.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index 4e78c82194b4..4e4008325e28 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -874,11 +874,15 @@ void ccw_device_move_to_orphanage(struct work_struct *work)
replacing_cdev = get_disc_ccwdev_by_dev_id(&dev_id, cdev);
if (replacing_cdev) {
sch_attach_disconnected_device(sch, replacing_cdev);
+ /* Release reference from get_disc_ccwdev_by_dev_id() */
+ put_device(&cdev->dev);
return;
}
replacing_cdev = get_orphaned_ccwdev_by_dev_id(css, &dev_id);
if (replacing_cdev) {
sch_attach_orphaned_device(sch, replacing_cdev);
+ /* Release reference from get_orphaned_ccwdev_by_dev_id() */
+ put_device(&cdev->dev);
return;
}
sch_create_and_recog_new_device(sch);