• J
    Bluetooth: Automate remote name requests · 127178d2
    Johan Hedberg 提交于
    In Bluetooth there are no automatic updates of remote device names when
    they get changed on the remote side. Instead, it is a good idea to do a
    manual name request when a new connection gets created (for whatever
    reason) since at this point it is very cheap (no costly baseband
    connection creation needed just for the sake of the name request).
    
    So far userspace has been responsible for this extra name request but
    tighter control is needed in order not to flood Bluetooth controllers
    with two many commands during connection creation. It has been shown
    that some controllers simply fail to function correctly if they get too
    many (almost) simultaneous commands during connection creation. The
    simplest way to acheive better control of these commands is to move
    their sending completely to the kernel side.
    
    This patch inserts name requests into the sequence of events that the
    kernel performs during connection creation. It does this after the
    remote features have been successfully requested and before any pending
    authentication requests are performed. The code will work sub-optimally
    with userspace versions that still do the name requesting themselves (it
    shouldn't break anything though) so it is recommended to combine this
    with a userspace software version that doesn't have automated name
    requests.
    Signed-off-by: NJohan Hedberg <johan.hedberg@nokia.com>
    Signed-off-by: NGustavo F. Padovan <padovan@profusion.mobi>
    127178d2
hci_event.c 45.7 KB