Lines Matching refs:asoc
60 struct sctp_stream *stream = &q->asoc->stream; in sctp_sched_fcfs_dequeue()
146 int sctp_sched_set_sched(struct sctp_association *asoc, in sctp_sched_set_sched() argument
150 struct sctp_sched_ops *old = asoc->outqueue.sched; in sctp_sched_set_sched()
162 sctp_sched_free_sched(&asoc->stream); in sctp_sched_set_sched()
164 asoc->outqueue.sched = n; in sctp_sched_set_sched()
165 n->init(&asoc->stream); in sctp_sched_set_sched()
166 for (i = 0; i < asoc->stream.outcnt; i++) { in sctp_sched_set_sched()
167 if (!SCTP_SO(&asoc->stream, i)->ext) in sctp_sched_set_sched()
170 ret = n->init_sid(&asoc->stream, i, GFP_ATOMIC); in sctp_sched_set_sched()
176 list_for_each_entry(ch, &asoc->outqueue.out_chunk_list, list) { in sctp_sched_set_sched()
180 n->enqueue(&asoc->outqueue, msg); in sctp_sched_set_sched()
186 sctp_sched_free_sched(&asoc->stream); in sctp_sched_set_sched()
187 asoc->outqueue.sched = &sctp_sched_fcfs; /* Always safe */ in sctp_sched_set_sched()
192 int sctp_sched_get_sched(struct sctp_association *asoc) in sctp_sched_get_sched() argument
197 if (asoc->outqueue.sched == sctp_sched_ops[i]) in sctp_sched_get_sched()
203 int sctp_sched_set_value(struct sctp_association *asoc, __u16 sid, in sctp_sched_set_value() argument
206 if (sid >= asoc->stream.outcnt) in sctp_sched_set_value()
209 if (!SCTP_SO(&asoc->stream, sid)->ext) { in sctp_sched_set_value()
212 ret = sctp_stream_init_ext(&asoc->stream, sid); in sctp_sched_set_value()
217 return asoc->outqueue.sched->set(&asoc->stream, sid, value, gfp); in sctp_sched_set_value()
220 int sctp_sched_get_value(struct sctp_association *asoc, __u16 sid, in sctp_sched_get_value() argument
223 if (sid >= asoc->stream.outcnt) in sctp_sched_get_value()
226 if (!SCTP_SO(&asoc->stream, sid)->ext) in sctp_sched_get_value()
229 return asoc->outqueue.sched->get(&asoc->stream, sid, value); in sctp_sched_get_value()
235 !q->asoc->peer.intl_capable) { in sctp_sched_dequeue_done()
244 sout = SCTP_SO(&q->asoc->stream, sid); in sctp_sched_dequeue_done()
245 q->asoc->stream.out_curr = sout; in sctp_sched_dequeue_done()
249 q->asoc->stream.out_curr = NULL; in sctp_sched_dequeue_done()
272 struct sctp_association *asoc; in sctp_sched_ops_from_stream() local
274 asoc = container_of(stream, struct sctp_association, stream); in sctp_sched_ops_from_stream()
276 return asoc->outqueue.sched; in sctp_sched_ops_from_stream()