Bluetooth: hci_bcm: Unable to handle kernel NULL pointer dereference in Linux 4.15rc4
Stefan Wahren
stefan.wahren at i2se.com
Sat Dec 23 08:10:37 PST 2017
[add Ronald and Lucas]
> Stefan Wahren <stefan.wahren at i2se.com> hat am 22. Dezember 2017 um 20:57 geschrieben:
>
>
> Hi,
>
> i'm working on Bluetooth support for Raspberry Pi Zero W (BCM43438) [1]. After enabling the driver and the DT stuff, i will get a NULL pointer dereference during boot of Linux 4.15-rc4:
>
> [ 14.934216] Bluetooth: HCI UART driver ver 2.3
> [ 14.934231] Bluetooth: HCI UART protocol H4 registered
> [ 14.934912] hci_uart_bcm serial0-0: BCM irq: -22
> [ 14.935147] uart-pl011 20201000.serial: no DMA platform data
> [ 14.948218] Unable to handle kernel NULL pointer dereference at virtual address 00000000
> [ 14.948238] pgd = a8969859
> [ 14.948247] [00000000] *pgd=00000000
> [ 14.948272] Internal error: Oops: 5 [#1] ARM
> [ 14.948279] Modules linked in: hci_uart(+) btbcm bcm2835_rng rng_core
> [ 14.948323] CPU: 0 PID: 149 Comm: kworker/u3:1 Tainted: G W 4.15.0-rc4+ #4
> [ 14.948327] Hardware name: BCM2835
> [ 14.948363] Workqueue: hci0 hci_cmd_work
> [ 14.948499] PC is at hci_uart_tx_wakeup+0x20/0xfc [hci_uart]
> [ 14.948560] LR is at hci_uart_send_frame+0x64/0x78 [hci_uart]
> [ 14.948570] pc : [<bf018074>] lr : [<bf019448>] psr: 20000013
> [ 14.948579] sp : d8df9e90 ip : d8df9ea8 fp : d8df9ea4
> [ 14.948585] r10: 00000000 r9 : 00000000 r8 : d96e8700
> [ 14.948594] r7 : c0c14a40 r6 : d97d3000 r5 : d96e8c48 r4 : d96e8c10
> [ 14.948601] r3 : 00000000 r2 : 20000013 r1 : d97ae540 r0 : d96e8c10
> [ 14.948613] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
> [ 14.948623] Control: 00c5387d Table: 19748008 DAC: 00000051
> [ 14.948641] Process kworker/u3:1 (pid: 149, stack limit = 0x0b8b6dd4)
> [ 14.948654] Stack: (0xd8df9e90 to 0xd8dfa000)
> [ 14.948668] 9e80: d97ae540 d96e8c10 d8df9ec4 d8df9ea8
> [ 14.948689] 9ea0: bf019448 bf018060 d97ae540 d97d3000 d97ae540 d97d3000 d8df9ee4 d8df9ec8
> [ 14.948707] 9ec0: c0687a6c bf0193f0 c0596408 c0592050 d97d3700 d97ae540 d8df9f0c d8df9ee8
> [ 14.948724] 9ee0: c0687b4c c06879d4 00000000 d8df9ef4 d8df9f44 d8e04a80 d97d3700 d8edb000
> [ 14.948742] 9f00: d8df9f44 d8df9f10 c0133e78 c0687acc d8edb000 c0c14a40 c0c14a40 d8e04a80
> [ 14.948760] 9f20: d8edb000 d8edb000 c0c14a40 c0c14a40 d8edb014 d8e04a98 d8df9f7c d8df9f48
> [ 14.948778] 9f40: c0134d0c c0133c80 d8ee05d8 d8e04a80 c0134a2c d8ee05c0 d8ee0540 d8defea4
> [ 14.948796] 9f60: d8ee05d8 d8e04a80 c0134a2c 00000000 d8df9fac d8df9f80 c0139768 c0134a38
> [ 14.948811] 9f80: d8df8000 d8ee0540 c013962c 00000000 00000000 00000000 00000000 00000000
> [ 14.948827] 9fa0: 00000000 d8df9fb0 c0107e88 c0139638 00000000 00000000 00000000 00000000
> [ 14.948841] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
> [ 14.948856] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 912f0073 00001877
> [ 14.949017] [<bf018074>] (hci_uart_tx_wakeup [hci_uart]) from [<bf019448>] (hci_uart_send_frame+0x64/0x78 [hci_uart])
> [ 14.949103] [<bf019448>] (hci_uart_send_frame [hci_uart]) from [<c0687a6c>] (hci_send_frame+0xa4/0xf8)
> [ 14.949134] [<c0687a6c>] (hci_send_frame) from [<c0687b4c>] (hci_cmd_work+0x8c/0x120)
> [ 14.949166] [<c0687b4c>] (hci_cmd_work) from [<c0133e78>] (process_one_work+0x204/0x380)
> [ 14.949194] [<c0133e78>] (process_one_work) from [<c0134d0c>] (worker_thread+0x2e0/0x450)
> [ 14.949228] [<c0134d0c>] (worker_thread) from [<c0139768>] (kthread+0x13c/0x158)
> [ 14.949270] [<c0139768>] (kthread) from [<c0107e88>] (ret_from_fork+0x14/0x2c)
> [ 14.949290] Code: e8bd4000 e1a04000 e2805038 e5903058 (e5932000)
> [ 14.949310] ---[ end trace e0ebe7d9031c01b2 ]---
> [ 15.155799] Bluetooth: HCI UART protocol Broadcom registered
> [ 16.435744] brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43430-sdio.bin for chip 0x00a9a6(43430) rev 0x000001
> [ 16.649373] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.clm_blob failed with error -2
> [ 16.651160] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Aug 7 2017 00:46:29 version 7.45.41.46 (r666254 CY) FWID 01-f8a78378
> [ 18.023283] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
> [ 21.041766] systemd-journald[97]: Received request to flush runtime journal from PID 1
> [ 25.446589] Bluetooth: hci0: BCM: failed to write update baudrate (-110)
> [ 25.474412] Bluetooth: hci0: Failed to set baudrate
> [ 35.686592] Bluetooth: hci0: BCM: Reset failed (-110)
>
after reverting 67d2f8781b9f ("Bluetooth: hci_ldisc: Allow sleeping while proto locks are held.") i can't reproduce this issue anymore.
More information about the linux-rpi-kernel
mailing list