Lines Matching refs:asoc
60 struct sctp_stream *stream = &q->asoc->stream; in sctp_sched_fcfs_dequeue()
148 int sctp_sched_set_sched(struct sctp_association *asoc, in sctp_sched_set_sched() argument
151 struct sctp_sched_ops *old = asoc->outqueue.sched; in sctp_sched_set_sched()
165 sctp_sched_free_sched(&asoc->stream); in sctp_sched_set_sched()
167 asoc->outqueue.sched = n; in sctp_sched_set_sched()
168 n->init(&asoc->stream); in sctp_sched_set_sched()
169 for (i = 0; i < asoc->stream.outcnt; i++) { in sctp_sched_set_sched()
170 if (!SCTP_SO(&asoc->stream, i)->ext) in sctp_sched_set_sched()
173 ret = n->init_sid(&asoc->stream, i, GFP_ATOMIC); in sctp_sched_set_sched()
179 list_for_each_entry(ch, &asoc->outqueue.out_chunk_list, list) { in sctp_sched_set_sched()
183 n->enqueue(&asoc->outqueue, msg); in sctp_sched_set_sched()
189 sctp_sched_free_sched(&asoc->stream); in sctp_sched_set_sched()
190 asoc->outqueue.sched = &sctp_sched_fcfs; /* Always safe */ in sctp_sched_set_sched()
195 int sctp_sched_get_sched(struct sctp_association *asoc) in sctp_sched_get_sched() argument
200 if (asoc->outqueue.sched == sctp_sched_ops[i]) in sctp_sched_get_sched()
206 int sctp_sched_set_value(struct sctp_association *asoc, __u16 sid, in sctp_sched_set_value() argument
209 if (sid >= asoc->stream.outcnt) in sctp_sched_set_value()
212 if (!SCTP_SO(&asoc->stream, sid)->ext) { in sctp_sched_set_value()
215 ret = sctp_stream_init_ext(&asoc->stream, sid); in sctp_sched_set_value()
220 return asoc->outqueue.sched->set(&asoc->stream, sid, value, gfp); in sctp_sched_set_value()
223 int sctp_sched_get_value(struct sctp_association *asoc, __u16 sid, in sctp_sched_get_value() argument
226 if (sid >= asoc->stream.outcnt) in sctp_sched_get_value()
229 if (!SCTP_SO(&asoc->stream, sid)->ext) in sctp_sched_get_value()
232 return asoc->outqueue.sched->get(&asoc->stream, sid, value); in sctp_sched_get_value()
238 !q->asoc->peer.intl_capable) { in sctp_sched_dequeue_done()
247 sout = SCTP_SO(&q->asoc->stream, sid); in sctp_sched_dequeue_done()
248 q->asoc->stream.out_curr = sout; in sctp_sched_dequeue_done()
252 q->asoc->stream.out_curr = NULL; in sctp_sched_dequeue_done()
275 struct sctp_association *asoc; in sctp_sched_ops_from_stream() local
277 asoc = container_of(stream, struct sctp_association, stream); in sctp_sched_ops_from_stream()
279 return asoc->outqueue.sched; in sctp_sched_ops_from_stream()