Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 194634
b: refs/heads/master
c: bc4f841
h: refs/heads/master
v: v3
  • Loading branch information
Wei Yongjun authored and Vlad Yasevich committed May 1, 2010
1 parent 99ea99b commit 68c0a80
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6429d3dc4bd6251b01c11b851e23a4d60f079e06
refs/heads/master: bc4f841a05364b2572bcc266e9fd7e9cf5f06d5b
12 changes: 12 additions & 0 deletions trunk/net/sctp/outqueue.c
Original file line number Diff line number Diff line change
Expand Up @@ -598,11 +598,23 @@ static int sctp_outq_flush_rtx(struct sctp_outq *q, struct sctp_packet *pkt,
if (fast_rtx && !chunk->fast_retransmit)
continue;

redo:
/* Attempt to append this chunk to the packet. */
status = sctp_packet_append_chunk(pkt, chunk);

switch (status) {
case SCTP_XMIT_PMTU_FULL:
if (!pkt->has_data && !pkt->has_cookie_echo) {
/* If this packet did not contain DATA then
* retransmission did not happen, so do it
* again. We'll ignore the error here since
* control chunks are already freed so there
* is nothing we can do.
*/
sctp_packet_transmit(pkt);
goto redo;
}

/* Send this packet. */
error = sctp_packet_transmit(pkt);

Expand Down

0 comments on commit 68c0a80

Please sign in to comment.