2018-10-15 21:33:30

by Dag B

[permalink] [raw]
Subject: bluetoothd spinning at 100% CPU in input_device_enter_reconnect_mode()

Hi.

When my bluetooth keyboard becomes unavailable (suspending, connecting to other controller, etc.), bluetoothd starts consuming 100% CPU.
See below for output from debug mode. Is this behavior expected? Is it avoidable?

Dag B

kernel: 4.18.13-gentoo
bluez: (git as of tonight)
no systemd

main.conf:

[General]
FastConnectable = true
[GATT]
Cache = yes
[Policy]
ReconnectUUIDs=
ReconnectAttempts=0
AutoEnable=true

bluetoothd[30587]: src/adapter.c:dev_disconnected() Device 00:18:00:3D:8B:E9 disconnected, reason 4
bluetoothd[30587]: src/adapter.c:adapter_remove_connection()
bluetoothd[30587]: src/adapter.c:bonding_attempt_complete() hci0 bdaddr 00:18:00:3D:8B:E9 type 0 status 0xe
bluetoothd[30587]: src/device.c:device_bonding_complete() bonding (nil) status 0x0e
bluetoothd[30587]: src/device.c:device_bonding_failed() status 14
bluetoothd[30587]: src/adapter.c:resume_discovery()
bluetoothd[30587]: profiles/input/device.c:ctrl_watch_cb() Device 00:18:00:3D:8B:E9 disconnected
bluetoothd[30587]: profiles/input/device.c:intr_watch_cb() Device 00:18:00:3D:8B:E9 disconnected
bluetoothd[30587]: src/service.c:change_state() 0x5593ae51b620: device 00:18:00:3D:8B:E9 profile input-hid state changed: connected -> disconnected (0)
bluetoothd[30587]: profiles/input/device.c:input_device_enter_reconnect_mode() path=/org/bluez/hci0/dev_00_18_00_3D_8B_E9 reconnect_mode=device

[At this point, bluetoothd starts consuming 100% cpu]


[Convertible 2 TKL]# show
Controller 00:1B:DC:06:BA:87 (public)
        Name: BlueZ 5.50
        Alias: BlueZ 5.50
        Class: 0x0000010c
        Powered: yes
        Discoverable: no
        DiscoverableTimeout: 0x000000b4
        Pairable: yes
        UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
        UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
        UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
        UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
        UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
        Modalias: usb:v1D6Bp0246d0532
        Discovering: no

[Convertible 2 TKL]# info
Device 00:18:00:3D:8B:E9 (public)
        Name: Convertible 2 TKL
        Alias: Convertible 2 TKL
        Class: 0x00000540
        Icon: input-keyboard
        Paired: yes
        Trusted: yes
        Blocked: no
        Connected: yes
        LegacyPairing: no
        UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)
        UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
        Modalias: usb:v0A5Cp8502d011B

I will be happy to provide further info as needed.