aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/uwb/rsv.c
diff options
context:
space:
mode:
authorThomas Pugliese <thomas.pugliese@gmail.com>2014-04-25 11:30:33 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-05-27 17:56:54 -0400
commit7b360ee09a8bec5783cbecdcb17cd8d70edadf56 (patch)
tree1f0e15c0e2e5e5c7b3ce1ce6fbebe5f1bde7b24c /drivers/uwb/rsv.c
parent90ec00d54e28f4b038e66905ea5b9478bcdc3f37 (diff)
uwb: add error messages when reservation establish fails
Add better error messages during the channel change/reservation establish process. Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/uwb/rsv.c')
-rw-r--r--drivers/uwb/rsv.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/uwb/rsv.c b/drivers/uwb/rsv.c
index 4026f1adff01..0887ae982783 100644
--- a/drivers/uwb/rsv.c
+++ b/drivers/uwb/rsv.c
@@ -163,8 +163,10 @@ static int uwb_rsv_get_stream(struct uwb_rsv *rsv)
163 } 163 }
164 164
165 stream = find_first_zero_bit(streams_bm, UWB_NUM_STREAMS); 165 stream = find_first_zero_bit(streams_bm, UWB_NUM_STREAMS);
166 if (stream >= UWB_NUM_STREAMS) 166 if (stream >= UWB_NUM_STREAMS) {
167 dev_err(dev, "%s: no available stream found\n", __func__);
167 return -EBUSY; 168 return -EBUSY;
169 }
168 170
169 rsv->stream = stream; 171 rsv->stream = stream;
170 set_bit(stream, streams_bm); 172 set_bit(stream, streams_bm);
@@ -555,12 +557,16 @@ int uwb_rsv_establish(struct uwb_rsv *rsv)
555{ 557{
556 struct uwb_rc *rc = rsv->rc; 558 struct uwb_rc *rc = rsv->rc;
557 struct uwb_mas_bm available; 559 struct uwb_mas_bm available;
560 struct device *dev = &rc->uwb_dev.dev;
558 int ret; 561 int ret;
559 562
560 mutex_lock(&rc->rsvs_mutex); 563 mutex_lock(&rc->rsvs_mutex);
561 ret = uwb_rsv_get_stream(rsv); 564 ret = uwb_rsv_get_stream(rsv);
562 if (ret) 565 if (ret) {
566 dev_err(dev, "%s: uwb_rsv_get_stream failed: %d\n",
567 __func__, ret);
563 goto out; 568 goto out;
569 }
564 570
565 rsv->tiebreaker = prandom_u32() & 1; 571 rsv->tiebreaker = prandom_u32() & 1;
566 /* get available mas bitmap */ 572 /* get available mas bitmap */
@@ -570,12 +576,16 @@ int uwb_rsv_establish(struct uwb_rsv *rsv)
570 if (ret == UWB_RSV_ALLOC_NOT_FOUND) { 576 if (ret == UWB_RSV_ALLOC_NOT_FOUND) {
571 ret = -EBUSY; 577 ret = -EBUSY;
572 uwb_rsv_put_stream(rsv); 578 uwb_rsv_put_stream(rsv);
579 dev_err(dev, "%s: uwb_rsv_find_best_allocation failed: %d\n",
580 __func__, ret);
573 goto out; 581 goto out;
574 } 582 }
575 583
576 ret = uwb_drp_avail_reserve_pending(rc, &rsv->mas); 584 ret = uwb_drp_avail_reserve_pending(rc, &rsv->mas);
577 if (ret != 0) { 585 if (ret != 0) {
578 uwb_rsv_put_stream(rsv); 586 uwb_rsv_put_stream(rsv);
587 dev_err(dev, "%s: uwb_drp_avail_reserve_pending failed: %d\n",
588 __func__, ret);
579 goto out; 589 goto out;
580 } 590 }
581 591