| From e72acc13c770a82b4ce4a07e9716f29320eae0f8 Mon Sep 17 00:00:00 2001 |
| From: Andre Guedes <andre.guedes@openbossa.org> |
| Date: Fri, 27 Jan 2012 19:42:03 -0300 |
| Subject: Bluetooth: Remove unneeded locking |
| |
| From: Andre Guedes <andre.guedes@openbossa.org> |
| |
| commit e72acc13c770a82b4ce4a07e9716f29320eae0f8 upstream. |
| |
| We don't need locking hdev in hci_conn_timeout() since it doesn't |
| access any hdev's shared resources, it basically queues HCI commands. |
| |
| Signed-off-by: Andre Guedes <andre.guedes@openbossa.org> |
| Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@openbossa.org> |
| Reviewed-by: Ulisses Furquim <ulisses@profusion.mobi> |
| Acked-by: Marcel Holtmann <marcel@holtmann.org> |
| Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> |
| Tested-by: Alexander Holler <holler@ahsoftware.de> |
| [reported to fix lockups on battery-powered bluetooth devices - gregkh] |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| net/bluetooth/hci_conn.c | 5 ----- |
| 1 file changed, 5 deletions(-) |
| |
| --- a/net/bluetooth/hci_conn.c |
| +++ b/net/bluetooth/hci_conn.c |
| @@ -279,7 +279,6 @@ static void hci_conn_timeout(struct work |
| { |
| struct hci_conn *conn = container_of(work, struct hci_conn, |
| disc_work.work); |
| - struct hci_dev *hdev = conn->hdev; |
| __u8 reason; |
| |
| BT_DBG("conn %p state %d", conn, conn->state); |
| @@ -287,8 +286,6 @@ static void hci_conn_timeout(struct work |
| if (atomic_read(&conn->refcnt)) |
| return; |
| |
| - hci_dev_lock(hdev); |
| - |
| switch (conn->state) { |
| case BT_CONNECT: |
| case BT_CONNECT2: |
| @@ -308,8 +305,6 @@ static void hci_conn_timeout(struct work |
| conn->state = BT_CLOSED; |
| break; |
| } |
| - |
| - hci_dev_unlock(hdev); |
| } |
| |
| /* Enter sniff mode */ |