Skip to content

Commit

Permalink
Bluetooth: Simplify l2cap_add_to_srej_queue
Browse files Browse the repository at this point in the history
Make it easier to see what is loop break condition.
skb_queue_next return valid skb or garbage, not NULL.

Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
  • Loading branch information
Szymon Janc authored and Gustavo F. Padovan committed Nov 16, 2011
1 parent aef89f2 commit 039d957
Showing 1 changed file with 5 additions and 8 deletions.
13 changes: 5 additions & 8 deletions net/bluetooth/l2cap_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -3562,14 +3562,10 @@ static int l2cap_add_to_srej_queue(struct l2cap_chan *chan, struct sk_buff *skb,
bt_cb(skb)->sar = sar;

next_skb = skb_peek(&chan->srej_q);
if (!next_skb) {
__skb_queue_tail(&chan->srej_q, skb);
return 0;
}

tx_seq_offset = __seq_offset(chan, tx_seq, chan->buffer_seq);

do {
while (next_skb) {
if (bt_cb(next_skb)->tx_seq == tx_seq)
return -EINVAL;

Expand All @@ -3582,9 +3578,10 @@ static int l2cap_add_to_srej_queue(struct l2cap_chan *chan, struct sk_buff *skb,
}

if (skb_queue_is_last(&chan->srej_q, next_skb))
break;

} while ((next_skb = skb_queue_next(&chan->srej_q, next_skb)));
next_skb = NULL;
else
next_skb = skb_queue_next(&chan->srej_q, next_skb);
}

__skb_queue_tail(&chan->srej_q, skb);

Expand Down

0 comments on commit 039d957

Please sign in to comment.