From: Johan Hedberg Date: Fri, 27 Jun 2014 11:23:05 +0000 (+0300) Subject: Bluetooth: Remove unnecessary hci_dev_unlock for smp_user_confirm_reply X-Git-Tag: firefly_0821_release~176^2~3474^2~12^2~41^2~235 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=a9999348e70ebaf5ceaad8f23611d40a6db1e3bc;p=firefly-linux-kernel-4.4.55.git Bluetooth: Remove unnecessary hci_dev_unlock for smp_user_confirm_reply Now that the SMP context has it's own crypto handle it doesn't need to lock the hci_dev anymore for most operations. This means that it is safe to call smp_user_confirm_reply with the lock already held. Signed-off-by: Johan Hedberg Signed-off-by: Marcel Holtmann --- diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index f75a090cd7e4..d542f8af6a5d 100644 --- a/net/bluetooth/mgmt.c +++ b/net/bluetooth/mgmt.c @@ -3052,14 +3052,7 @@ static int user_pairing_resp(struct sock *sk, struct hci_dev *hdev, } if (addr->type == BDADDR_LE_PUBLIC || addr->type == BDADDR_LE_RANDOM) { - /* Continue with pairing via SMP. The hdev lock must be - * released as SMP may try to recquire it for crypto - * purposes. - */ - hci_dev_unlock(hdev); err = smp_user_confirm_reply(conn, mgmt_op, passkey); - hci_dev_lock(hdev); - if (!err) err = cmd_complete(sk, hdev->id, mgmt_op, MGMT_STATUS_SUCCESS, addr,