Lines Matching refs:asoc

64 	struct sctp_stream *stream = &q->asoc->stream;
134 int sctp_sched_set_sched(struct sctp_association *asoc,
138 struct sctp_sched_ops *old = asoc->outqueue.sched;
150 old->free(&asoc->stream);
153 for (i = 0; i < asoc->stream.outcnt; i++) {
154 void *p = SCTP_SO(&asoc->stream, i)->ext;
165 asoc->outqueue.sched = n;
166 n->init(&asoc->stream);
167 for (i = 0; i < asoc->stream.outcnt; i++) {
168 if (!SCTP_SO(&asoc->stream, i)->ext)
171 ret = n->init_sid(&asoc->stream, i, GFP_ATOMIC);
177 list_for_each_entry(ch, &asoc->outqueue.out_chunk_list, list) {
181 n->enqueue(&asoc->outqueue, msg);
187 n->free(&asoc->stream);
188 asoc->outqueue.sched = &sctp_sched_fcfs; /* Always safe */
193 int sctp_sched_get_sched(struct sctp_association *asoc)
198 if (asoc->outqueue.sched == sctp_sched_ops[i])
204 int sctp_sched_set_value(struct sctp_association *asoc, __u16 sid,
207 if (sid >= asoc->stream.outcnt)
210 if (!SCTP_SO(&asoc->stream, sid)->ext) {
213 ret = sctp_stream_init_ext(&asoc->stream, sid);
218 return asoc->outqueue.sched->set(&asoc->stream, sid, value, gfp);
221 int sctp_sched_get_value(struct sctp_association *asoc, __u16 sid,
224 if (sid >= asoc->stream.outcnt)
227 if (!SCTP_SO(&asoc->stream, sid)->ext)
230 return asoc->outqueue.sched->get(&asoc->stream, sid, value);
236 !q->asoc->peer.intl_capable) {
245 sout = SCTP_SO(&q->asoc->stream, sid);
246 q->asoc->stream.out_curr = sout;
250 q->asoc->stream.out_curr = NULL;
273 struct sctp_association *asoc;
275 asoc = container_of(stream, struct sctp_association, stream);
277 return asoc->outqueue.sched;