.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-or-later |
---|
1 | 2 | /* SCTP kernel implementation |
---|
2 | 3 | * (C) Copyright Red Hat Inc. 2017 |
---|
3 | 4 | * |
---|
4 | 5 | * This file is part of the SCTP kernel implementation |
---|
5 | 6 | * |
---|
6 | 7 | * These functions manipulate sctp stream queue/scheduling. |
---|
7 | | - * |
---|
8 | | - * This SCTP implementation is free software; |
---|
9 | | - * you can redistribute it and/or modify it under the terms of |
---|
10 | | - * the GNU General Public License as published by |
---|
11 | | - * the Free Software Foundation; either version 2, or (at your option) |
---|
12 | | - * any later version. |
---|
13 | | - * |
---|
14 | | - * This SCTP implementation is distributed in the hope that it |
---|
15 | | - * will be useful, but WITHOUT ANY WARRANTY; without even the implied |
---|
16 | | - * ************************ |
---|
17 | | - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
---|
18 | | - * See the GNU General Public License for more details. |
---|
19 | | - * |
---|
20 | | - * You should have received a copy of the GNU General Public License |
---|
21 | | - * along with GNU CC; see the file COPYING. If not, see |
---|
22 | | - * <http://www.gnu.org/licenses/>. |
---|
23 | 8 | * |
---|
24 | 9 | * Please send any bug reports or fixes you make to the |
---|
25 | 10 | * email addresched(es): |
---|
.. | .. |
---|
59 | 44 | gfp_t gfp) |
---|
60 | 45 | { |
---|
61 | 46 | return 0; |
---|
| 47 | +} |
---|
| 48 | + |
---|
| 49 | +static void sctp_sched_fcfs_free_sid(struct sctp_stream *stream, __u16 sid) |
---|
| 50 | +{ |
---|
62 | 51 | } |
---|
63 | 52 | |
---|
64 | 53 | static void sctp_sched_fcfs_free(struct sctp_stream *stream) |
---|
.. | .. |
---|
111 | 100 | .get = sctp_sched_fcfs_get, |
---|
112 | 101 | .init = sctp_sched_fcfs_init, |
---|
113 | 102 | .init_sid = sctp_sched_fcfs_init_sid, |
---|
| 103 | + .free_sid = sctp_sched_fcfs_free_sid, |
---|
114 | 104 | .free = sctp_sched_fcfs_free, |
---|
115 | 105 | .enqueue = sctp_sched_fcfs_enqueue, |
---|
116 | 106 | .dequeue = sctp_sched_fcfs_dequeue, |
---|
.. | .. |
---|
178 | 168 | if (!SCTP_SO(&asoc->stream, i)->ext) |
---|
179 | 169 | continue; |
---|
180 | 170 | |
---|
181 | | - ret = n->init_sid(&asoc->stream, i, GFP_KERNEL); |
---|
| 171 | + ret = n->init_sid(&asoc->stream, i, GFP_ATOMIC); |
---|
182 | 172 | if (ret) |
---|
183 | 173 | goto err; |
---|
184 | 174 | } |
---|
.. | .. |
---|
243 | 233 | void sctp_sched_dequeue_done(struct sctp_outq *q, struct sctp_chunk *ch) |
---|
244 | 234 | { |
---|
245 | 235 | if (!list_is_last(&ch->frag_list, &ch->msg->chunks) && |
---|
246 | | - !q->asoc->intl_enable) { |
---|
| 236 | + !q->asoc->peer.intl_capable) { |
---|
247 | 237 | struct sctp_stream_out *sout; |
---|
248 | 238 | __u16 sid; |
---|
249 | 239 | |
---|