kernel_optimize_test/drivers/bluetooth
Steven Rostedt 4989bb0334 Bluetooth: hci_qca: Use del_timer_sync() before freeing
commit 72ef98445aca568a81c2da050532500a8345ad3a upstream.

While looking at a crash report on a timer list being corrupted, which
usually happens when a timer is freed while still active. This is
commonly triggered by code calling del_timer() instead of
del_timer_sync() just before freeing.

One possible culprit is the hci_qca driver, which does exactly that.

Eric mentioned that wake_retrans_timer could be rearmed via the work
queue, so also move the destruction of the work queue before
del_timer_sync().

Cc: Eric Dumazet <eric.dumazet@gmail.com>
Cc: stable@vger.kernel.org
Fixes: 0ff252c197 ("Bluetooth: hciuart: Add support QCA chipset for UART")
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-06-06 08:42:43 +02:00
..
ath3k.c
bcm203x.c
bfusb.c Bluetooth: bfusb: fix division by zero in send path 2022-01-16 09:14:22 +01:00
bluecard_cs.c
bpa10x.c
bt3c_cs.c
btbcm.c
btbcm.h
btintel.c
btintel.h
btmrvl_debugfs.c
btmrvl_drv.h
btmrvl_main.c
btmrvl_sdio.c
btmrvl_sdio.h
btmtksdio.c Bluetooth: btmtksdio: Fix kernel oops in btmtksdio_interrupt 2022-04-08 14:40:22 +02:00
btmtkuart.c Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync 2021-11-18 14:04:03 +01:00
btqca.c Bluetooth: btqca: Don't modify firmware contents in-place 2021-07-14 16:55:34 +02:00
btqca.h
btqcomsmd.c Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function 2021-03-04 11:37:20 +01:00
btrsi.c
btrtl.c
btrtl.h
btsdio.c
btusb.c Bluetooth: btusb: Add support for Foxconn QCA 0xe0d0 2022-01-16 09:14:22 +01:00
dtl1_cs.c
h4_recv.h
hci_ag6xx.c
hci_ath.c
hci_bcm.c Bluetooth: hci_bcm: Check for error irq 2022-01-27 10:54:01 +01:00
hci_bcsp.c
hci_h4.c
hci_h5.c Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl 2021-03-07 12:34:09 +01:00
hci_intel.c
hci_ldisc.c tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer 2021-03-04 11:37:36 +01:00
hci_ll.c
hci_mrvl.c
hci_nokia.c
hci_qca.c Bluetooth: hci_qca: Use del_timer_sync() before freeing 2022-06-06 08:42:43 +02:00
hci_serdev.c Bluetooth: hci_serdev: call init_rwsem() before p->open() 2022-04-08 14:40:12 +02:00
hci_uart.h
hci_vhci.c Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES 2022-01-27 10:54:18 +01:00
Kconfig
Makefile