OpenCloudOS-Kernel/net/bluetooth
David Woodhouse 1c39858b5d Fix use-after-free oops in Bluetooth HID.
When cleaning up HIDP sessions, we currently close the ACL connection
before deregistering the input device. Closing the ACL connection
schedules a workqueue to remove the associated objects from sysfs, but
the input device still refers to them -- and if the workqueue happens to
run before the input device removal, the kernel will oops when trying to
look up PHYSDEVPATH for the removed input device.

Fix this by deregistering the input device before closing the
connections.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-07 12:22:37 -07:00
..
bnep header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
cmtp [SK_BUFF]: Introduce skb_copy_from_linear_data{_offset} 2007-04-25 22:28:23 -07:00
hidp Fix use-after-free oops in Bluetooth HID. 2007-07-07 12:22:37 -07:00
rfcomm [Bluetooth] Disconnect L2CAP connection after last RFCOMM DLC 2007-05-05 00:36:13 +02:00
Kconfig [S390] Kconfig: unwanted menus for s390. 2007-05-10 15:46:07 +02:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
af_bluetooth.c [SK_BUFF]: Introduce skb_reset_transport_header(skb) 2007-04-25 22:25:15 -07:00
hci_conn.c [NET] BLUETOOTH: Use cpu_to_le{16,32}() where appropriate. 2007-04-25 22:23:54 -07:00
hci_core.c [NET]: cleanup extra semicolons 2007-04-25 22:29:24 -07:00
hci_event.c [NET] BLUETOOTH: Use cpu_to_le{16,32}() where appropriate. 2007-04-25 22:23:54 -07:00
hci_sock.c [BLUETOOTH]: Fix locking in hci_sock_dev_event(). 2007-05-17 14:20:30 -07:00
hci_sysfs.c Fix bluetooth HCI sysfs compile 2007-05-07 17:32:08 -07:00
l2cap.c [Bluetooth] Fix L2CAP configuration parameter handling 2007-05-24 14:27:19 +02:00
lib.c [NET] BLUETOOTH: Fix whitespace errors. 2007-02-10 23:19:20 -08:00
sco.c [NET]: cleanup extra semicolons 2007-04-25 22:29:24 -07:00