diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2008-02-26 20:42:56 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-02-26 20:42:56 -0500 |
commit | 3ab2273175bd59616b6e85c0f88b154e8bd97413 (patch) | |
tree | d77cb79e89925a0def66bb710e97896508f45efa /net/bluetooth/l2cap.c | |
parent | 5f2f40a92e007ec5b503db20f3f70cb331c64f65 (diff) |
bluetooth: delete timer in l2cap_conn_del()
Delete a possibly armed timer before kfree'ing the connection object.
Solves: http://lkml.org/lkml/2008/2/15/514
Reported-by:Quel Qun <kelk1@comcast.net>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bluetooth/l2cap.c')
-rw-r--r-- | net/bluetooth/l2cap.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c index a8811c0a0ce..7c5459c8e8e 100644 --- a/net/bluetooth/l2cap.c +++ b/net/bluetooth/l2cap.c | |||
@@ -417,6 +417,8 @@ static void l2cap_conn_del(struct hci_conn *hcon, int err) | |||
417 | l2cap_sock_kill(sk); | 417 | l2cap_sock_kill(sk); |
418 | } | 418 | } |
419 | 419 | ||
420 | del_timer_sync(&conn->info_timer); | ||
421 | |||
420 | hcon->l2cap_data = NULL; | 422 | hcon->l2cap_data = NULL; |
421 | kfree(conn); | 423 | kfree(conn); |
422 | } | 424 | } |