• Sonny Sasaka's avatar
    Bluetooth: Handle Inquiry Cancel error after Inquiry Complete · 7f8a294b
    Sonny Sasaka authored
    [ Upstream commit adf1d692 ]
    
    After sending Inquiry Cancel command to the controller, it is possible
    that Inquiry Complete event comes before Inquiry Cancel command complete
    event. In this case the Inquiry Cancel command will have status of
    Command Disallowed since there is no Inquiry session to be cancelled.
    This case should not be treated as error, otherwise we can reach an
    inconsistent state.
    
    Example of a btmon trace when this happened:
    
    < HCI Command: Inquiry Cancel (0x01|0x0002) plen 0
    > HCI Event: Inquiry Complete (0x01) plen 1
            Status: Success (0x00)
    > HCI Event: Command Complete (0x0e) plen 4
          Inquiry Cancel (0x01|0x0002) ncmd 1
            Status: Command Disallowed (0x0c)
    Signed-off-by: default avatarSonny Sasaka <sonnysasaka@chromium.org>
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
    7f8a294b
hci_event.c 131 KB