| From e95895f37ce73603bcb44dc1d6c1794854513cae Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 4 Sep 2019 20:13:08 +0200 |
| Subject: Revert "Bluetooth: validate BLE connection interval updates" |
| |
| From: Marcel Holtmann <marcel@holtmann.org> |
| |
| [ Upstream commit 68d19d7d995759b96169da5aac313363f92a9075 ] |
| |
| This reverts commit c49a8682fc5d298d44e8d911f4fa14690ea9485e. |
| |
| There are devices which require low connection intervals for usable operation |
| including keyboards and mice. Forcing a static connection interval for |
| these types of devices has an impact in latency and causes a regression. |
| |
| Signed-off-by: Marcel Holtmann <marcel@holtmann.org> |
| Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| net/bluetooth/hci_event.c | 5 ----- |
| net/bluetooth/l2cap_core.c | 9 +-------- |
| 2 files changed, 1 insertion(+), 13 deletions(-) |
| |
| diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c |
| index 163a239bda91a..6f78489fdb132 100644 |
| --- a/net/bluetooth/hci_event.c |
| +++ b/net/bluetooth/hci_event.c |
| @@ -5089,11 +5089,6 @@ static void hci_le_remote_conn_param_req_evt(struct hci_dev *hdev, |
| return send_conn_param_neg_reply(hdev, handle, |
| HCI_ERROR_UNKNOWN_CONN_ID); |
| |
| - if (min < hcon->le_conn_min_interval || |
| - max > hcon->le_conn_max_interval) |
| - return send_conn_param_neg_reply(hdev, handle, |
| - HCI_ERROR_INVALID_LL_PARAMS); |
| - |
| if (hci_check_conn_params(min, max, latency, timeout)) |
| return send_conn_param_neg_reply(hdev, handle, |
| HCI_ERROR_INVALID_LL_PARAMS); |
| diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c |
| index 4912e80dacefa..48d23abfe7992 100644 |
| --- a/net/bluetooth/l2cap_core.c |
| +++ b/net/bluetooth/l2cap_core.c |
| @@ -5277,14 +5277,7 @@ static inline int l2cap_conn_param_update_req(struct l2cap_conn *conn, |
| |
| memset(&rsp, 0, sizeof(rsp)); |
| |
| - if (min < hcon->le_conn_min_interval || |
| - max > hcon->le_conn_max_interval) { |
| - BT_DBG("requested connection interval exceeds current bounds."); |
| - err = -EINVAL; |
| - } else { |
| - err = hci_check_conn_params(min, max, latency, to_multiplier); |
| - } |
| - |
| + err = hci_check_conn_params(min, max, latency, to_multiplier); |
| if (err) |
| rsp.result = cpu_to_le16(L2CAP_CONN_PARAM_REJECTED); |
| else |
| -- |
| 2.20.1 |
| |