uwb: fix channel change failure
authorThomas Pugliese <thomas.pugliese@gmail.com>
Fri, 25 Apr 2014 15:30:32 +0000 (10:30 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 27 May 2014 21:56:54 +0000 (14:56 -0700)
commit90ec00d54e28f4b038e66905ea5b9478bcdc3f37
tree71ed3bc15a264277adcad0b562d8198d8656759f
parentbae00c1ac3b3f32a0f7f1964054f6c3f33559607
uwb: fix channel change failure

Make the transition to the UWB_RSV_STATE_NONE state synchronous so that
there is not a race between uwb_rsv_terminate and uwb_rsv_establish.
uwb_rsv_terminate would set the rsv->state to UWB_RSV_STATE_NONE but did
not release the stream resource until a 320ms timeout had expired.  If a
user called uwb_rsv_establish during that time, it could fail to
establish the reservation because no stream resources were available.
This patch removes the timer from the uwb_rsv_terminate process since it
is not needed when transitioning to UWB_RSV_STATE_NONE.

Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/uwb/rsv.c