We currently print errors twice when doing a "goto error;". Avoid this and also use labels for each error-condition. We shouldn't mix "inline-cleanup" and "goto-cleanup" in a single function. It makes extending the function later just more work. Signed-off-by: David Herrmann <dh.herrmann@xxxxxxxxx> --- net/bluetooth/hidp/sock.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/net/bluetooth/hidp/sock.c b/net/bluetooth/hidp/sock.c index 5d0f1ca..ca86436 100644 --- a/net/bluetooth/hidp/sock.c +++ b/net/bluetooth/hidp/sock.c @@ -281,22 +281,22 @@ int __init hidp_init_sockets(void) err = bt_sock_register(BTPROTO_HIDP, &hidp_sock_family_ops); if (err < 0) { BT_ERR("Can't register HIDP socket"); - goto error; + goto err_proto; } err = bt_procfs_init(THIS_MODULE, &init_net, "hidp", &hidp_sk_list, NULL); if (err < 0) { BT_ERR("Failed to create HIDP proc file"); - bt_sock_unregister(BTPROTO_HIDP); - goto error; + goto err_sock; } BT_INFO("HIDP socket layer initialized"); return 0; -error: - BT_ERR("Can't register HIDP socket"); +err_sock: + bt_sock_unregister(BTPROTO_HIDP); +err_proto: proto_unregister(&hidp_proto); return err; } -- 1.8.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html