Lines Matching full:needed
97 /* Do reassembly if needed. */ in sctp_ulpq_tail_data()
100 /* Do ordering if needed. */ in sctp_ulpq_tail_data()
723 /* Do ordering if needed. */ in sctp_ulpq_reasm_drain()
953 * ordering and deliver them if needed. in sctp_ulpq_skip()
959 __u16 needed) in sctp_ulpq_renege_list() argument
999 if (freed >= needed) in sctp_ulpq_renege_list()
1006 /* Renege 'needed' bytes from the ordering queue. */
1007 static __u16 sctp_ulpq_renege_order(struct sctp_ulpq *ulpq, __u16 needed) in sctp_ulpq_renege_order() argument
1009 return sctp_ulpq_renege_list(ulpq, &ulpq->lobby, needed); in sctp_ulpq_renege_order()
1012 /* Renege 'needed' bytes from the reassembly queue. */
1013 static __u16 sctp_ulpq_renege_frags(struct sctp_ulpq *ulpq, __u16 needed) in sctp_ulpq_renege_frags() argument
1015 return sctp_ulpq_renege_list(ulpq, &ulpq->reasm, needed); in sctp_ulpq_renege_frags()
1074 __u16 needed; in sctp_ulpq_renege() local
1076 needed = ntohs(chunk->chunk_hdr->length) - in sctp_ulpq_renege()
1080 freed = sctp_ulpq_renege_order(ulpq, needed); in sctp_ulpq_renege()
1081 if (freed < needed) in sctp_ulpq_renege()
1082 freed += sctp_ulpq_renege_frags(ulpq, needed - freed); in sctp_ulpq_renege()
1085 if (sk_rmem_schedule(asoc->base.sk, chunk->skb, needed) && in sctp_ulpq_renege()
1086 freed >= needed) { in sctp_ulpq_renege()