Christopher Collins created MYNEWT-700:
------------------------------------------

             Summary: BLE Host - Race condition: disconnect + att-tx
                 Key: MYNEWT-700
                 URL: https://issues.apache.org/jira/browse/MYNEWT-700
             Project: Mynewt
          Issue Type: Bug
            Reporter: Christopher Collins
            Assignee: Christopher Collins
             Fix For: v1_1_0_rel


Some parts of the ATT code assume a peer is still connected after an initial 
check.  This assumption leads to a race condition when a task other than the 
host task is doing the transmitting (e.g., tx of unsolicited notification).  It 
is possible that the peer gets disconnected after the tx function is called, 
but before it completes.  When this occurs, an assertion fails 
(ble_att_conn_chan_find()).

The fix is to remove this assumption.  Always check that the connection / 
channel lookup succeeds before accessing the returned pointers.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to