提交 3a382772 编写于 作者: S Sachin Kamat 提交者: Gustavo Padovan

Bluetooth: Use devm_kzalloc in btsdio.c file

devm_kzalloc() eliminates the need to free memory explicitly
thereby saving some cleanup code.
Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org>
Acked-by: NMarcel Holtmann <marcel@holtmann.org>
Signed-off-by: NGustavo Padovan <gustavo.padovan@collabora.co.uk>
上级 eb17ea3b
...@@ -304,7 +304,7 @@ static int btsdio_probe(struct sdio_func *func, ...@@ -304,7 +304,7 @@ static int btsdio_probe(struct sdio_func *func,
tuple = tuple->next; tuple = tuple->next;
} }
data = kzalloc(sizeof(*data), GFP_KERNEL); data = devm_kzalloc(&func->dev, sizeof(*data), GFP_KERNEL);
if (!data) if (!data)
return -ENOMEM; return -ENOMEM;
...@@ -315,10 +315,8 @@ static int btsdio_probe(struct sdio_func *func, ...@@ -315,10 +315,8 @@ static int btsdio_probe(struct sdio_func *func,
skb_queue_head_init(&data->txq); skb_queue_head_init(&data->txq);
hdev = hci_alloc_dev(); hdev = hci_alloc_dev();
if (!hdev) { if (!hdev)
kfree(data);
return -ENOMEM; return -ENOMEM;
}
hdev->bus = HCI_SDIO; hdev->bus = HCI_SDIO;
hci_set_drvdata(hdev, data); hci_set_drvdata(hdev, data);
...@@ -340,7 +338,6 @@ static int btsdio_probe(struct sdio_func *func, ...@@ -340,7 +338,6 @@ static int btsdio_probe(struct sdio_func *func,
err = hci_register_dev(hdev); err = hci_register_dev(hdev);
if (err < 0) { if (err < 0) {
hci_free_dev(hdev); hci_free_dev(hdev);
kfree(data);
return err; return err;
} }
...@@ -366,7 +363,6 @@ static void btsdio_remove(struct sdio_func *func) ...@@ -366,7 +363,6 @@ static void btsdio_remove(struct sdio_func *func)
hci_unregister_dev(hdev); hci_unregister_dev(hdev);
hci_free_dev(hdev); hci_free_dev(hdev);
kfree(data);
} }
static struct sdio_driver btsdio_driver = { static struct sdio_driver btsdio_driver = {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册