Bug 136221 - Bluetooth devices stop working, can't be reconnected until WiFi radio is turned off
Summary: Bluetooth devices stop working, can't be reconnected until WiFi radio is turn...
Status: CLOSED WILL_NOT_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Bluetooth (show other bugs)
Hardware: All Linux
: P1 high
Assignee: DO NOT USE - assign "network-wireless-intel" component instead
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-21 18:59 UTC by Chris Murphy
Modified: 2018-01-04 16:07 UTC (History)
0 users

See Also:
Kernel Version: 4.6.3-300.fc24.x86_64
Subsystem:
Regression: No
Bisected commit-id:


Attachments
bug136221_journal-bluetoothmouse.txt (15.31 KB, text/plain)
2016-07-22 15:08 UTC, Chris Murphy
Details

Description Chris Murphy 2016-07-21 18:59:05 UTC
Apple Inc. MacBookPro8,2 [Core i7, 15", 2011]

03:00.0 Network controller [0280]: Broadcom Corporation BCM4331 802.11a/b/g/n [14e4:4331] (rev 02)
	Subsystem: Apple Inc. AirPort Extreme [106b:00d6]

[    7.975200] Bluetooth: hci0: BCM: chip id 19 build 0847
[    7.977172] Bluetooth: hci0: BCM: product 05ac:821a

Problem: About a dozen times per day, bluetooth devices are disconnected for no apparent reason.

Jul 21 12:47:39 f24m kernel: input: mouses as /devices/pci0000:00/0000:00:1a.7/usb1/1-1/1-1.1/1-1.1.3/1-1.1.3:1.0/bluetooth/hci0/hci0:12/0005:05AC:030D.0009/input/input18
Jul 21 12:47:39 f24m kernel: magicmouse 0005:05AC:030D.0009: input,hidraw2: BLUETOOTH HID v3.06 Mouse [mouses] on e0:f8:47:39:5d:df
Jul 21 12:47:39 f24m /usr/libexec/gdm-x-session[1710]: (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-1/1-1.1/1-1.1.3/1-1.1.3:1.0/bluetooth/hci0/hci0:12/0005:05AC:030D.0009/input/input18/event6"


And I can't reconnect unless I first turn off the WiFi radio, and then click the bluetooth mouse button or type some keys on the keyboard, and then the device is reaquired. Then I can turn WiFi back on. While WiFi is enabled there is no way to initiate reconnecting with the device.

Upstream GNOME folks say this is a kernel bug.
https://bugzilla.gnome.org/show_bug.cgi?id=767820

Regression testing:
With this same hardware setup, the problem doesn't ever occur when running Windows or macOS.
Comment 1 Chris Murphy 2016-07-22 15:08:36 UTC
Created attachment 225331 [details]
bug136221_journal-bluetoothmouse.txt

The behavior is much worse with kernel 4.7.0-0.rc7.git4.1.fc25.x86_64 in that Bluetooth never properly recovers after waking from suspend to RAM. I have to reboot. The behavior on wake is, Bluetooth devices aren't connected to automatically. If I disable WiFi, those devices do connect and work normally. If I enable WiFi the new behavior is the devices immediately behave sluggishly: mouse arrow jerks around, increasingly non-responsive to movement and clicks, keyboard delays typed keys and increasingly drops what I've typed, and then devices finally just vanish.

So it's completely unusable in practice with kernel 4.7.0. (Arguably it's barely usable having to cycle power on WiFi a dozen times per day with older kernels.)

Attached is a journalctl output for this sequence.

Jul 22 08:54:49 f24m NetworkManager[926]: <info>  [1469199289.7078] WiFi hardware radio set enabled

self explanatory, I've already turned off WiFi, mouse is working fine, and here I turn on WiFi. Immediately the mouse starts to become unresponsive and jerks around on-screen. There's no meaningful messages in the log that explain this, no errors for WiFi or Bluetooth. So some sort of debug mode for bluetooth and or WiFi is maybe needed.

It takes about 20 seconds for the device to just stop working entirely, and then it's another 30 seconds before there's a message in the log that relates to this:


Jul 22 08:55:24 f24m /usr/libexec/gdm-x-session[9575]: (II) config/udev: removing device mouses
Jul 22 08:55:24 f24m /usr/libexec/gdm-x-session[9575]: (**) Option "fd" "35"
Jul 22 08:55:24 f24m /usr/libexec/gdm-x-session[9575]: (II) UnloadModule: "libinput"
Jul 22 08:55:24 f24m /usr/libexec/gdm-x-session[9575]: (II) systemd-logind: releasing fd for 13:72
Jul 22 08:55:24 f24m bluetoothd[820]: GLib: Source ID 193 was not found when attempting to remove it

and later

Jul 22 08:55:55 f24m bluetoothd[820]: Can't get HIDP connection info
Jul 22 08:56:00 f24m bluetoothd[820]: connect error: Host is down (112)
Jul 22 08:56:25 f24m bluetoothd[820]: Can't get HIDP connection info
Jul 22 08:56:30 f24m bluetoothd[820]: connect error: Host is down (112)

Turning off the WiFi radio, all I have to do is single click on the mouse, and it reconnects, works normally. And then the whole thing starts over again and fails if I turn on WiFi. So to stop this nonsense I'll have to reboot.
Comment 2 Emmanuel Grumbach 2017-12-25 22:10:25 UTC
Still relevant?

Found the bug by chance.
Comment 3 Emmanuel Grumbach 2018-01-04 16:07:16 UTC
Please reopen if needed.

Note You need to log in before you can comment on or make changes to this bug.