dw3000_stm: uninterruptedly wait for pending_work to complete
Data assigned to stm->generic_work can be a local variable (e.g.:
dw3000_state_start) that discarded after function returns, and in this
case, dw3000_event_thread will get an invalid generic_work that causes
data abort.
To fix it, repeats the wait_event_interruptible_locked_irq until the
event condition meets, that is, ignore the signal interrupting case.
Bug: 199454999
Change-Id: I1a244e2e50c14de2c471f0e0f696c8b403881fcb
(cherry picked from commit 0ea8be1ed473db3a0fe5dab4ed11d13ea8fd63ee)
1 file changed