Hermes Zhang
e6a57d22f7
Bluetooth: hci_ldisc: Free rw_semaphore on close
...
The percpu_rw_semaphore is not currently freed, and this leads to
a crash when the stale rcu callback is invoked. DEBUG_OBJECTS
detects this.
ODEBUG: free active (active state 1) object type: rcu_head hint: (null)
------------[ cut here ]------------
WARNING: CPU: 1 PID: 2024 at debug_print_object+0xac/0xc8
PC is at debug_print_object+0xac/0xc8
LR is at debug_print_object+0xac/0xc8
Call trace:
[<ffffff80082e2c2c>] debug_print_object+0xac/0xc8
[<ffffff80082e40b0>] debug_check_no_obj_freed+0x1e8/0x228
[<ffffff8008191254>] kfree+0x1cc/0x250
[<ffffff80083cc03c>] hci_uart_tty_close+0x54/0x108
[<ffffff800832e118>] tty_ldisc_close.isra.1+0x40/0x58
[<ffffff800832e14c>] tty_ldisc_kill+0x1c/0x40
[<ffffff800832e3dc>] tty_ldisc_release+0x94/0x170
[<ffffff8008325554>] tty_release_struct+0x1c/0x58
[<ffffff8008326400>] tty_release+0x3b0/0x490
[<ffffff80081a3fe8>] __fput+0x88/0x1d0
[<ffffff80081a418c>] ____fput+0xc/0x18
[<ffffff80080c0624>] task_work_run+0x9c/0xc0
[<ffffff80080a9e24>] do_exit+0x24c/0x8a0
[<ffffff80080aa4e0>] do_group_exit+0x38/0xa0
[<ffffff80080aa558>] __wake_up_parent+0x0/0x28
[<ffffff8008082c00>] el0_svc_naked+0x34/0x38
---[ end trace bfe08cbd89098cdf ]---
Signed-off-by: Hermes Zhang <chenhuiz@axis.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
2018-09-11 13:33:57 +02:00
..
ath3k.c
Bluetooth: ath3k: fix checkpatch warning
2018-02-07 09:46:09 +01:00
bcm203x.c
Bluetooth: mark expected switch fall-throughs
2017-10-14 09:25:51 +02:00
bfusb.c
bluetooth: bfusb: Replace GFP_ATOMIC with GFP_KERNEL in bfusb_send_frame()
2018-07-23 18:05:00 +02:00
bluecard_cs.c
bluetooth: bluecard_cs: Replace GFP_ATOMIC with GFP_KERNEL in bluecard_hci_set_baud_rate()
2018-07-23 18:05:00 +02:00
bpa10x.c
bluetooth: bpa10x: Replace GFP_ATOMIC with GFP_KERNEL in bpa10x_send_frame()
2018-07-23 18:05:00 +02:00
bt3c_cs.c
Bluetooth: Use bt_dev_err and bt_dev_info when possible
2017-10-30 12:25:45 +02:00
btbcm.c
Bluetooth: btbcm: btbcm_initialize(): Initialize hw_name to "BCM"
2018-05-18 06:37:51 +02:00
btbcm.h
Bluetooth: btbcm: Allow using btbcm_initialize() for reinit
2018-05-18 06:37:51 +02:00
btintel.c
Bluetooth: btintel: Create common function for firmware download
2018-01-25 09:28:40 +01:00
btintel.h
Bluetooth: btintel: Create common function for firmware download
2018-01-25 09:28:40 +01:00
btmrvl_debugfs.c
Bluetooth: btmrvl: Re-use kstrtol_from_user()
2018-05-30 08:16:05 +02:00
btmrvl_drv.h
Bluetooth: btmrvl: support sysfs initiated firmware coredump
2018-05-29 15:59:50 +02:00
btmrvl_main.c
Bluetooth: btmrvl: support sysfs initiated firmware coredump
2018-05-29 15:59:50 +02:00
btmrvl_sdio.c
bluetooth: btmrvl_sdio: Replace GFP_ATOMIC with GFP_KERNEL in btmrvl_sdio_card_to_host()
2018-07-23 18:05:00 +02:00
btmrvl_sdio.h
btmtkuart.c
Bluetooth: mediatek: Fix memory leak
2018-08-21 16:56:20 +02:00
btqca.c
Bluetooth: btqca: Introduce HCI_EV_VENDOR and use it
2018-08-06 21:25:05 +03:00
btqca.h
Bluetooth: hci_qca: Add support for Qualcomm Bluetooth chip wcn3990
2018-08-03 14:44:07 +02:00
btqcomsmd.c
Bluetooth: btqcomsmd: Fix rx/tx stats
2018-05-18 06:37:50 +02:00
btrsi.c
Bluetooth: btrsi: remove unused including <linux/version.h>
2018-04-01 21:43:02 +03:00
btrtl.c
Bluetooth: btrtl: Add support for a config filename postfix
2018-08-03 13:27:46 +02:00
btrtl.h
Bluetooth: btrtl: Add support for a config filename postfix
2018-08-03 13:27:46 +02:00
btsdio.c
Bluetooth: btsdio: Do not bind to non-removable BCM43341
2017-12-13 00:28:41 +01:00
btusb.c
Bluetooth: btusb: Use bt_dev_err for Intel firmware loading errors
2018-08-03 14:14:51 +03:00
btwilink.c
Bluetooth: Style fix - align block comments
2017-07-22 08:39:39 +02:00
dtl1_cs.c
h4_recv.h
Bluetooth: bpa10x: Use separate h4_recv_buf helper
2018-04-01 14:25:32 +02:00
hci_ag6xx.c
hci_ath.c
Bluetooth: hci_ath: Replace mdelay with msleep in ath_wakeup_ar3k
2018-02-07 09:47:04 +01:00
hci_bcm.c
Bluetooth: hci_serdev: Move serdev_device_close/open into common hci_serdev code
2018-05-30 08:47:42 +02:00
hci_bcsp.c
Bluetooth: Convert timers to use timer_setup()
2017-10-06 20:37:11 +02:00
hci_h4.c
Bluetooth: Use bt_dev_err and bt_dev_info when possible
2017-10-30 12:25:45 +02:00
hci_h5.c
Bluetooth: Introduce BT_HCIUART_RTL configuration option
2018-08-09 20:48:10 +03:00
hci_intel.c
bluetooth: hci_intel: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete()
2018-07-23 18:05:00 +02:00
hci_ldisc.c
Bluetooth: hci_ldisc: Free rw_semaphore on close
2018-09-11 13:33:57 +02:00
hci_ll.c
Bluetooth: hci_serdev: Move serdev_device_close/open into common hci_serdev code
2018-05-30 08:47:42 +02:00
hci_mrvl.c
hci_nokia.c
bluetooth: hci_nokia: Don't include linux/unaligned/le_struct.h directly.
2018-06-17 08:38:55 +09:00
hci_qca.c
Bluetooth: hci_qca: Add support for Qualcomm Bluetooth chip wcn3990
2018-08-03 14:44:07 +02:00
hci_serdev.c
Bluetooth: hci_serdev: Fix HCI_UART_INIT_PENDING not working
2018-05-30 08:49:20 +02:00
hci_uart.h
Bluetooth: hci_serdev: Fix HCI_UART_INIT_PENDING not working
2018-05-30 08:49:20 +02:00
hci_vhci.c
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
Kconfig
Bluetooth: Make BT_HCIUART_RTL configuration option depend on ACPI
2018-08-21 16:36:12 +02:00
Makefile
Bluetooth: mediatek: Add protocol support for MediaTek serial devices
2018-08-07 21:33:25 +02:00