Marcel Ziswiler
d4e2365b07
Bluetooth: btnxpuart: Fix btnxpuart_close
...
[ Upstream commit 664130c0b0309b360bc5bdd40a30604a9387bde8 ]
Fix scheduling while atomic BUG in btnxpuart_close(), properly
purge the transmit queue and free the receive skb.
[ 10.973809] BUG: scheduling while atomic: kworker/u9:0/80/0x00000002
...
[ 10.980740] CPU: 3 PID: 80 Comm: kworker/u9:0 Not tainted 6.8.0-rc7-0.0.0-devel-00005-g61fdfceacf09 #1
[ 10.980751] Hardware name: Toradex Verdin AM62 WB on Dahlia Board (DT)
[ 10.980760] Workqueue: hci0 hci_power_off [bluetooth]
[ 10.981169] Call trace:
...
[ 10.981363] uart_update_mctrl+0x58/0x78
[ 10.981373] uart_dtr_rts+0x104/0x114
[ 10.981381] tty_port_shutdown+0xd4/0xdc
[ 10.981396] tty_port_close+0x40/0xbc
[ 10.981407] uart_close+0x34/0x9c
[ 10.981414] ttyport_close+0x50/0x94
[ 10.981430] serdev_device_close+0x40/0x50
[ 10.981442] btnxpuart_close+0x24/0x98 [btnxpuart]
[ 10.981469] hci_dev_close_sync+0x2d8/0x718 [bluetooth]
[ 10.981728] hci_dev_do_close+0x2c/0x70 [bluetooth]
[ 10.981862] hci_power_off+0x20/0x64 [bluetooth]
Fixes: 689ca16e5232 ("Bluetooth: NXP: Add protocol support for NXP Bluetooth chipsets")
Cc: stable@vger.kernel.org
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reviewed-by: Neeraj Sanjay Kale <neeraj.sanjaykale@nxp.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-04-03 15:28:27 +02:00
..
2022-03-18 17:12:09 +01:00
2022-03-18 17:12:09 +01:00
2021-10-25 15:04:46 +02:00
2020-07-10 19:09:42 +02:00
2023-08-11 11:50:05 -07:00
2022-07-21 17:04:38 -07:00
2023-08-24 12:23:46 -07:00
2023-08-24 12:23:26 -07:00
2022-06-10 14:51:36 +02:00
2022-06-10 14:51:36 +02:00
2022-06-10 14:51:36 +02:00
2023-04-23 21:49:18 -07:00
2022-06-10 14:51:36 +02:00
2024-03-26 18:19:38 -04:00
2023-08-11 11:48:58 -07:00
2022-07-21 17:08:03 -07:00
2024-01-25 15:35:29 -08:00
2024-04-03 15:28:27 +02:00
2024-03-06 14:48:36 +00:00
2023-08-24 12:21:15 -07:00
2023-03-23 13:09:38 -07:00
2021-09-29 00:13:48 +02:00
2023-10-13 20:03:04 -07:00
2023-08-11 11:35:14 -07:00
2023-04-23 22:04:52 -07:00
2024-03-26 18:19:38 -04:00
2021-06-26 07:52:41 +02:00
2024-03-06 14:48:39 +00:00
2023-06-29 10:52:08 -07:00
2022-12-25 13:38:09 -08:00
2021-11-16 13:57:25 +01:00
2024-03-26 18:19:38 -04:00
2022-07-21 17:05:10 -07:00
2023-09-01 09:38:00 -07:00
2023-04-23 21:49:03 -07:00
2023-04-23 21:45:29 -07:00
2023-08-11 11:50:41 -07:00
2024-03-26 18:19:37 -04:00
2024-03-26 18:19:38 -04:00
2024-03-26 18:19:38 -04:00
2024-01-01 12:42:31 +00:00
2023-04-23 21:58:21 -07:00
2023-04-23 21:51:55 -07:00
2023-07-03 12:15:12 -04:00