[Bluetooth] Handle return values from driver core functions
Some return values of the driver core register and create functions are not handled and so might cause unexpected problems. Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Родитель
e9c5702e3c
Коммит
df5c37ea9a
|
@ -242,10 +242,14 @@ static void add_conn(void *data)
|
|||
struct hci_conn *conn = data;
|
||||
int i;
|
||||
|
||||
device_register(&conn->dev);
|
||||
if (device_register(&conn->dev) < 0) {
|
||||
BT_ERR("Failed to register connection device");
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; conn_attrs[i]; i++)
|
||||
device_create_file(&conn->dev, conn_attrs[i]);
|
||||
if (device_create_file(&conn->dev, conn_attrs[i]) < 0)
|
||||
BT_ERR("Failed to create connection attribute");
|
||||
}
|
||||
|
||||
void hci_conn_add_sysfs(struct hci_conn *conn)
|
||||
|
@ -312,7 +316,8 @@ int hci_register_sysfs(struct hci_dev *hdev)
|
|||
return err;
|
||||
|
||||
for (i = 0; bt_attrs[i]; i++)
|
||||
device_create_file(dev, bt_attrs[i]);
|
||||
if (device_create_file(dev, bt_attrs[i]) < 0)
|
||||
BT_ERR("Failed to create device attribute");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -2216,7 +2216,8 @@ static int __init l2cap_init(void)
|
|||
goto error;
|
||||
}
|
||||
|
||||
class_create_file(bt_class, &class_attr_l2cap);
|
||||
if (class_create_file(bt_class, &class_attr_l2cap) < 0)
|
||||
BT_ERR("Failed to create L2CAP info file");
|
||||
|
||||
BT_INFO("L2CAP ver %s", VERSION);
|
||||
BT_INFO("L2CAP socket layer initialized");
|
||||
|
|
|
@ -2058,7 +2058,8 @@ static int __init rfcomm_init(void)
|
|||
|
||||
kernel_thread(rfcomm_run, NULL, CLONE_KERNEL);
|
||||
|
||||
class_create_file(bt_class, &class_attr_rfcomm_dlc);
|
||||
if (class_create_file(bt_class, &class_attr_rfcomm_dlc) < 0)
|
||||
BT_ERR("Failed to create RFCOMM info file");
|
||||
|
||||
rfcomm_init_sockets();
|
||||
|
||||
|
|
|
@ -944,7 +944,8 @@ int __init rfcomm_init_sockets(void)
|
|||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
class_create_file(bt_class, &class_attr_rfcomm);
|
||||
if (class_create_file(bt_class, &class_attr_rfcomm) < 0)
|
||||
BT_ERR("Failed to create RFCOMM info file");
|
||||
|
||||
BT_INFO("RFCOMM socket layer initialized");
|
||||
|
||||
|
|
|
@ -967,7 +967,8 @@ static int __init sco_init(void)
|
|||
goto error;
|
||||
}
|
||||
|
||||
class_create_file(bt_class, &class_attr_sco);
|
||||
if (class_create_file(bt_class, &class_attr_sco) < 0)
|
||||
BT_ERR("Failed to create SCO info file");
|
||||
|
||||
BT_INFO("SCO (Voice Link) ver %s", VERSION);
|
||||
BT_INFO("SCO socket layer initialized");
|
||||
|
|
Загрузка…
Ссылка в новой задаче