aboutsummaryrefslogtreecommitdiffstats
path: root/net/sctp/inqueue.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@sunset.davemloft.net>2007-11-12 18:16:13 -0800
committerDavid S. Miller <davem@sunset.davemloft.net>2007-11-12 18:16:13 -0800
commitbce943278dc4aa03b0ef9c7cf8b1b7110eda8b91 (patch)
tree4225e979eb543e1970eb2b38174bd5dbdfd42237 /net/sctp/inqueue.c
parent[NET]: Add the helper kernel_sock_shutdown() (diff)
parentFix memory leak in discard case of sctp_sf_abort_violation() (diff)
downloadlinux-dev-bce943278dc4aa03b0ef9c7cf8b1b7110eda8b91.tar.xz
linux-dev-bce943278dc4aa03b0ef9c7cf8b1b7110eda8b91.zip
Merge branch 'pending' of master.kernel.org:/pub/scm/linux/kernel/git/vxy/lksctp-dev
Diffstat (limited to 'net/sctp/inqueue.c')
-rw-r--r--net/sctp/inqueue.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/sctp/inqueue.c b/net/sctp/inqueue.c
index f10fe7fbf24c..cf4b7eb023b3 100644
--- a/net/sctp/inqueue.c
+++ b/net/sctp/inqueue.c
@@ -90,6 +90,10 @@ void sctp_inq_free(struct sctp_inq *queue)
void sctp_inq_push(struct sctp_inq *q, struct sctp_chunk *chunk)
{
/* Directly call the packet handling routine. */
+ if (chunk->rcvr->dead) {
+ sctp_chunk_free(chunk);
+ return;
+ }
/* We are now calling this either from the soft interrupt
* or from the backlog processing.