mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
Bluetooth: btusb: Do not call kfree_skb() under spin_lock_irqsave()
[ Upstream commit2a05334d7f] It is not allowed to call kfree_skb() from hardware interrupt context or with hardware interrupts being disabled. So replace kfree_skb() with dev_kfree_skb_irq() under spin_lock_irqsave(). Compile tested only. Fixes:baac6276c0("Bluetooth: btusb: handle mSBC audio over USB Endpoints") Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
7e7197e4d6
commit
a33ae132ee
@@ -1984,7 +1984,7 @@ static int btusb_switch_alt_setting(struct hci_dev *hdev, int new_alts)
|
|||||||
* alternate setting.
|
* alternate setting.
|
||||||
*/
|
*/
|
||||||
spin_lock_irqsave(&data->rxlock, flags);
|
spin_lock_irqsave(&data->rxlock, flags);
|
||||||
kfree_skb(data->sco_skb);
|
dev_kfree_skb_irq(data->sco_skb);
|
||||||
data->sco_skb = NULL;
|
data->sco_skb = NULL;
|
||||||
spin_unlock_irqrestore(&data->rxlock, flags);
|
spin_unlock_irqrestore(&data->rxlock, flags);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user