On Tue, May 23, 2017 at 01:28:54PM +0800, Xin Long wrote: > Since commit 3dbcc105d556 ("sctp: alloc stream info when initializing > asoc"), stream and stream.out info are always alloced when creating > an asoc. > > So it's not correct to check !asoc->stream before updating stream > info when processing dupcookie, but would be better to check asoc > state instead. > > Fixes: 3dbcc105d556 ("sctp: alloc stream info when initializing asoc") > Signed-off-by: Xin Long <lucien.xin@xxxxxxxxx> > --- > net/sctp/associola.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/net/sctp/associola.c b/net/sctp/associola.c > index a9708da..9523828 100644 > --- a/net/sctp/associola.c > +++ b/net/sctp/associola.c > @@ -1176,7 +1176,9 @@ void sctp_assoc_update(struct sctp_association *asoc, > > asoc->ctsn_ack_point = asoc->next_tsn - 1; > asoc->adv_peer_ack_point = asoc->ctsn_ack_point; > - if (!asoc->stream) { > + > + if (sctp_state(asoc, COOKIE_WAIT)) { > + sctp_stream_free(asoc->stream); > asoc->stream = new->stream; > new->stream = NULL; > } > -- > 2.1.0 > > Acked-by: Neil Horman <nhorman@xxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-sctp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html