uwb: fix oops when terminating an already terminated reservation
authorDavid Vrabel <david.vrabel@csr.com>
Fri, 12 Dec 2008 13:23:24 +0000 (13:23 +0000)
committerDavid Vrabel <david.vrabel@csr.com>
Fri, 12 Dec 2008 13:23:24 +0000 (13:23 +0000)
Calling uwb_rsv_terminate() on a reservation already in UWB_RSV_STATE_NONE
should do nothing.

Signed-off-by: David Vrabel <david.vrabel@csr.com>
drivers/uwb/rsv.c

index 165aec6..ec6eecb 100644 (file)
@@ -669,7 +669,8 @@ void uwb_rsv_terminate(struct uwb_rsv *rsv)
 
        mutex_lock(&rc->rsvs_mutex);
 
-       uwb_rsv_set_state(rsv, UWB_RSV_STATE_NONE);
+       if (rsv->state != UWB_RSV_STATE_NONE)
+               uwb_rsv_set_state(rsv, UWB_RSV_STATE_NONE);
 
        mutex_unlock(&rc->rsvs_mutex);
 }