Message ID | d4be9c9c1ce2757bad4df19885d605e97a1ceec8.1647472087.git.objelf@gmail.com |
---|---|
State | Superseded |
Headers | show |
Series | [v5,1/5] Bluetooth: btmtksdio: Fix kernel oops in btmtksdio_interrupt | expand |
Hello: This series was applied to bluetooth/bluetooth-next.git (master) by Marcel Holtmann <marcel@holtmann.org>: On Thu, 17 Mar 2022 07:15:19 +0800 you wrote: > From: Yake Yang <yake.yang@mediatek.com> > > Fix the following kernel oops in btmtksdio_interrrupt > > [ 14.339134] btmtksdio_interrupt+0x28/0x54 > [ 14.339139] process_sdio_pending_irqs+0x68/0x1a0 > [ 14.339144] sdio_irq_work+0x40/0x70 > [ 14.339154] process_one_work+0x184/0x39c > [ 14.339160] worker_thread+0x228/0x3e8 > [ 14.339168] kthread+0x148/0x3ac > [ 14.339176] ret_from_fork+0x10/0x30 > > [...] Here is the summary with links: - [v5,1/5] Bluetooth: btmtksdio: Fix kernel oops in btmtksdio_interrupt https://git.kernel.org/bluetooth/bluetooth-next/c/496eab9dde9f - [v5,2/5] Bluetooth: mt7921s: Set HCI_QUIRK_VALID_LE_STATES https://git.kernel.org/bluetooth/bluetooth-next/c/aeeb8ed27062 - [v5,3/5] Bluetooth: mt7921s: Add .get_data_path_id https://git.kernel.org/bluetooth/bluetooth-next/c/c844ce71d5be - [v5,4/5] Bluetooth: mt7921s: Add .btmtk_get_codec_config_data https://git.kernel.org/bluetooth/bluetooth-next/c/3cabc5ca2c9d - [v5,5/5] Bluetooth: mt7921s: Add WBS support https://git.kernel.org/bluetooth/bluetooth-next/c/255a55aaccb1 You are awesome, thank you!
diff --git a/drivers/bluetooth/btmtksdio.c b/drivers/bluetooth/btmtksdio.c index df3f9d090529..9644069cecbb 100644 --- a/drivers/bluetooth/btmtksdio.c +++ b/drivers/bluetooth/btmtksdio.c @@ -1281,6 +1281,8 @@ static int btmtksdio_probe(struct sdio_func *func, hdev->manufacturer = 70; set_bit(HCI_QUIRK_NON_PERSISTENT_SETUP, &hdev->quirks); + sdio_set_drvdata(func, bdev); + err = hci_register_dev(hdev); if (err < 0) { dev_err(&func->dev, "Can't register HCI device\n"); @@ -1288,8 +1290,6 @@ static int btmtksdio_probe(struct sdio_func *func, return err; } - sdio_set_drvdata(func, bdev); - /* pm_runtime_enable would be done after the firmware is being * downloaded because the core layer probably already enables * runtime PM for this func such as the case host->caps &