3.3-stable review patch. If anyone has any objections, please let me know.
------------------ From: Andre Guedes <[email protected]> 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 <[email protected]> Signed-off-by: Vinicius Costa Gomes <[email protected]> Reviewed-by: Ulisses Furquim <[email protected]> Acked-by: Marcel Holtmann <[email protected]> Signed-off-by: Johan Hedberg <[email protected]> Tested-by: Alexander Holler <[email protected]> [reported to fix lockups on battery-powered bluetooth devices - gregkh] Signed-off-by: Greg Kroah-Hartman <[email protected]> --- 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 */ -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
