linux_dsm_epyc7002/drivers/bluetooth
Chan-yeol Park c257820291 Bluetooth: Fix H4 crash from incoming UART packets
This patch adds a check HCI_UART_REGISTERED before reading UART data in
the HCI UART H4 driver. UART data could arrive when inside the
hci_uart_tty_ioctl function after calling test_and_set_bit for
HCI_UART_PROTO_SET but before the hci_uart_set_proto function has
returned.

Backtrace:
[<c05f27ec>] (hci_recv_stream_fragment+0x0/0x74) from [<c04126f4>] (h4_recv+0x18/0x40)
 r7:eb1d4d1c r6:eb7683b0 r5:eae8e800 r4:0000000c
[<c04126dc>] (h4_recv+0x0/0x40) from [<c0411870>] (hci_uart_tty_receive+0x6c/0x94)
 r5:eae8e800 r4:eb768380
[<c0411804>] (hci_uart_tty_receive+0x0/0x94) from [<c027be88>] (flush_to_ldisc+0x16c/0x17c)
 r6:eae8e8d8 r5:eae8e800 r4:eae8e8c8
[<c027bd1c>] (flush_to_ldisc+0x0/0x17c) from [<c0050ae8>] (process_one_work+0x144/0x4d4)
[<c00509a4>] (process_one_work+0x0/0x4d4) from [<c0051208>] (worker_thread+0x180/0x370)
[<c0051088>] (worker_thread+0x0/0x370) from [<c005617c>] (kthread+0x90/0x9c)
[<c00560ec>] (kthread+0x0/0x9c) from [<c003a3a0>] (do_exit+0x0/0x7ec)

Signed-off-by: Chan-yeol Park <chanyeol.park@samsung.com>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2013-04-04 12:35:58 +03:00
..
ath3k.c Bluetooth: Add support for Foxconn/Hon Hai [0489:e04d] 2013-04-04 11:12:32 +03:00
bcm203x.c Bluetooth: Use devm_kzalloc in bcm203x.c file. 2012-08-06 15:03:00 -03:00
bfusb.c Bluetooth: Use devm_kzalloc in bfusb.c file 2012-08-06 15:03:00 -03:00
bluecard_cs.c Bluetooth: bluecard_cs.c: removes unnecessary semicolon 2012-09-18 22:26:09 -03:00
bpa10x.c Bluetooth: Use devm_kzalloc in bpa10x.c file 2012-08-06 15:03:01 -03:00
bt3c_cs.c Bluetooth: Use devm_kzalloc in bt3c_cs.c file 2012-08-06 15:03:01 -03:00
btmrvl_debugfs.c simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
btmrvl_drv.h Bluetooth: btmrvl: Do not send vendor events to bluetooth stack 2012-06-19 00:19:11 -03:00
btmrvl_main.c Bluetooth: btmrvl: trivial style fixes 2012-07-09 09:45:10 -03:00
btmrvl_sdio.c bluetooth: btmrvl_sdio: look for sd8688 firmware in proper location 2013-03-15 15:42:59 -03:00
btmrvl_sdio.h Bluetooth: btmrvl: support Marvell Bluetooth device SD8787 2011-04-13 12:20:05 -03:00
btsdio.c Bluetooth: Use devm_kzalloc in btsdio.c file 2012-08-06 15:03:01 -03:00
btuart_cs.c Bluetooth: btuart_cs.c: removes unnecessary semicolon 2012-09-18 22:27:17 -03:00
btusb.c Bluetooth: Add support for Foxconn/Hon Hai [0489:e04d] 2013-04-04 11:12:32 +03:00
btwilink.c Bluetooth: Use module_platform_driver() in btwilink.c file 2012-09-08 16:53:47 -03:00
dtl1_cs.c Bluetooth: Use devm_kzalloc in dtl1_cs.c file 2012-08-06 15:03:02 -03:00
hci_ath.c tty: move the termios object into the tty 2012-07-16 13:00:41 -07:00
hci_bcsp.c Bluetooth: Remove 'register' usage from the subsystem 2012-06-05 06:34:07 +03:00
hci_h4.c Bluetooth: Fix H4 crash from incoming UART packets 2013-04-04 12:35:58 +03:00
hci_h5.c Bluetooth: Introduce a flags variable to Three-wire UART state 2012-07-17 14:49:24 -03:00
hci_ldisc.c TTY: hci_ldisc, remove invalid check in open 2012-10-22 16:50:53 -07:00
hci_ll.c Bluetooth: hci_ll.c: removes unnecessary semicolon 2012-09-18 22:26:33 -03:00
hci_uart.h Bluetooth: Add delayed init sequence support for UART controllers 2012-07-17 14:48:29 -03:00
hci_vhci.c Bluetooth: hci_vhci.c: removes unnecessary semicolon 2012-09-18 22:26:43 -03:00
Kconfig tty: Added a CONFIG_TTY option to allow removal of TTY 2013-01-18 16:15:27 -08:00
Makefile Bluetooth: Initial skeleton for Three-wire UART (H5) support 2012-07-17 14:33:20 -03:00