diff options
author | Geliang Tang <geliangtang@163.com> | 2015-10-12 00:05:13 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-10-18 00:42:29 -0400 |
commit | 82ff3ac7641a645b55f3bee4acceabf6f17e62f4 (patch) | |
tree | 4c132acad29c0ceb736b20051ec170097e7c984e | |
parent | f8bf0dece0fcc9b5271b67cae1123ebfcaf8d8bc (diff) |
misc: mic: replace kfree with put_device
Handle a failed device_register(), replace kfree() with put_device(),
which will call cosm/mbus/scif_release_dev().
Signed-off-by: Geliang Tang <geliangtang@163.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/misc/mic/bus/cosm_bus.c | 2 | ||||
-rw-r--r-- | drivers/misc/mic/bus/mic_bus.c | 2 | ||||
-rw-r--r-- | drivers/misc/mic/bus/scif_bus.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/drivers/misc/mic/bus/cosm_bus.c b/drivers/misc/mic/bus/cosm_bus.c index 1e36830f1a4e..d31d6c6e6cb1 100644 --- a/drivers/misc/mic/bus/cosm_bus.c +++ b/drivers/misc/mic/bus/cosm_bus.c | |||
@@ -100,7 +100,7 @@ cosm_register_device(struct device *pdev, struct cosm_hw_ops *hw_ops) | |||
100 | ida_remove: | 100 | ida_remove: |
101 | ida_simple_remove(&cosm_index_ida, cdev->index); | 101 | ida_simple_remove(&cosm_index_ida, cdev->index); |
102 | free_cdev: | 102 | free_cdev: |
103 | kfree(cdev); | 103 | put_device(&cdev->dev); |
104 | return ERR_PTR(ret); | 104 | return ERR_PTR(ret); |
105 | } | 105 | } |
106 | EXPORT_SYMBOL_GPL(cosm_register_device); | 106 | EXPORT_SYMBOL_GPL(cosm_register_device); |
diff --git a/drivers/misc/mic/bus/mic_bus.c b/drivers/misc/mic/bus/mic_bus.c index c64955d8cbc1..be37890abb93 100644 --- a/drivers/misc/mic/bus/mic_bus.c +++ b/drivers/misc/mic/bus/mic_bus.c | |||
@@ -175,7 +175,7 @@ mbus_register_device(struct device *pdev, int id, struct dma_map_ops *dma_ops, | |||
175 | goto free_mbdev; | 175 | goto free_mbdev; |
176 | return mbdev; | 176 | return mbdev; |
177 | free_mbdev: | 177 | free_mbdev: |
178 | kfree(mbdev); | 178 | put_device(&mbdev->dev); |
179 | return ERR_PTR(ret); | 179 | return ERR_PTR(ret); |
180 | } | 180 | } |
181 | EXPORT_SYMBOL_GPL(mbus_register_device); | 181 | EXPORT_SYMBOL_GPL(mbus_register_device); |
diff --git a/drivers/misc/mic/bus/scif_bus.c b/drivers/misc/mic/bus/scif_bus.c index fd2702143022..ff6e01c25810 100644 --- a/drivers/misc/mic/bus/scif_bus.c +++ b/drivers/misc/mic/bus/scif_bus.c | |||
@@ -180,7 +180,7 @@ scif_register_device(struct device *pdev, int id, struct dma_map_ops *dma_ops, | |||
180 | goto free_sdev; | 180 | goto free_sdev; |
181 | return sdev; | 181 | return sdev; |
182 | free_sdev: | 182 | free_sdev: |
183 | kfree(sdev); | 183 | put_device(&sdev->dev); |
184 | return ERR_PTR(ret); | 184 | return ERR_PTR(ret); |
185 | } | 185 | } |
186 | EXPORT_SYMBOL_GPL(scif_register_device); | 186 | EXPORT_SYMBOL_GPL(scif_register_device); |