Lines Matching refs:soute
30 struct sctp_stream_out_ext *soute = SCTP_SO(stream, sid)->ext;
35 soute->fc_weight = weight;
42 struct sctp_stream_out_ext *soute = SCTP_SO(stream, sid)->ext;
44 *value = soute->fc_weight;
70 struct sctp_stream_out_ext *soute = SCTP_SO(stream, sid)->ext;
72 INIT_LIST_HEAD(&soute->fc_list);
73 soute->fc_length = 0;
74 soute->fc_weight = 1;
84 struct sctp_stream_out_ext *soute)
88 if (!list_empty(&soute->fc_list))
92 if ((__u64)pos->fc_length * soute->fc_weight >=
93 (__u64)soute->fc_length * pos->fc_weight)
95 list_add_tail(&soute->fc_list, &pos->fc_list);
114 struct sctp_stream_out_ext *soute;
123 soute = stream->out_curr->ext;
125 soute = list_entry(stream->fc_list.next, struct sctp_stream_out_ext, fc_list);
126 ch = list_entry(soute->outq.next, struct sctp_chunk, stream_list);
136 struct sctp_stream_out_ext *soute, *pos;
140 soute = SCTP_SO(stream, sid)->ext;
142 if (soute->fc_length > U32_MAX - ch->skb->len) {
154 soute->fc_length += ch->skb->len;
156 if (list_empty(&soute->outq)) {
157 list_del_init(&soute->fc_list);
161 pos = soute;
163 if ((__u64)pos->fc_length * soute->fc_weight >=
164 (__u64)soute->fc_length * pos->fc_weight)
166 list_move_tail(&soute->fc_list, &pos->fc_list);
185 struct sctp_stream_out_ext *soute, *tmp;
187 list_for_each_entry_safe(soute, tmp, &stream->fc_list, fc_list)
188 list_del_init(&soute->fc_list);