diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2014-06-27 07:23:05 -0400 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-07-03 11:42:47 -0400 |
commit | a9999348e70ebaf5ceaad8f23611d40a6db1e3bc (patch) | |
tree | 9e9f013bb53bb49d883a6fd588d580595f5b8f75 /net | |
parent | ec70f36f8b17dd21c0d64af4481aa3c898c1cec7 (diff) |
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 <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/bluetooth/mgmt.c | 7 |
1 files changed, 0 insertions, 7 deletions
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, | |||
3052 | } | 3052 | } |
3053 | 3053 | ||
3054 | if (addr->type == BDADDR_LE_PUBLIC || addr->type == BDADDR_LE_RANDOM) { | 3054 | if (addr->type == BDADDR_LE_PUBLIC || addr->type == BDADDR_LE_RANDOM) { |
3055 | /* Continue with pairing via SMP. The hdev lock must be | ||
3056 | * released as SMP may try to recquire it for crypto | ||
3057 | * purposes. | ||
3058 | */ | ||
3059 | hci_dev_unlock(hdev); | ||
3060 | err = smp_user_confirm_reply(conn, mgmt_op, passkey); | 3055 | err = smp_user_confirm_reply(conn, mgmt_op, passkey); |
3061 | hci_dev_lock(hdev); | ||
3062 | |||
3063 | if (!err) | 3056 | if (!err) |
3064 | err = cmd_complete(sk, hdev->id, mgmt_op, | 3057 | err = cmd_complete(sk, hdev->id, mgmt_op, |
3065 | MGMT_STATUS_SUCCESS, addr, | 3058 | MGMT_STATUS_SUCCESS, addr, |