nfc: fix error handling of nfc_proto_register()
commit 0911ab31896f0e908540746414a77dd63912748d upstream.
When nfc proto id is using, nfc_proto_register() return -EBUSY error
code, but forgot to unregister proto. Fix it by adding proto_unregister()
in the error handling case.
Fixes: c7fe3b52c1
("NFC: add NFC socket family")
Signed-off-by: Ziyang Xuan <william.xuanziyang@huawei.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20211013034932.2833737-1-william.xuanziyang@huawei.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ba39f55952
commit
2f21f06a5e
@ -60,6 +60,9 @@ int nfc_proto_register(const struct nfc_protocol *nfc_proto)
|
||||
proto_tab[nfc_proto->id] = nfc_proto;
|
||||
write_unlock(&proto_tab_lock);
|
||||
|
||||
if (rc)
|
||||
proto_unregister(nfc_proto->proto);
|
||||
|
||||
return rc;
|
||||
}
|
||||
EXPORT_SYMBOL(nfc_proto_register);
|
||||
|
Loading…
Reference in New Issue
Block a user