diff options
Diffstat (limited to 'net/sctp/socket.c')
-rw-r--r-- | net/sctp/socket.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c index a3138a0fe2c..76c747056dd 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c | |||
@@ -1729,7 +1729,7 @@ SCTP_STATIC int sctp_sendmsg(struct kiocb *iocb, struct sock *sk, | |||
1729 | /* Now send the (possibly) fragmented message. */ | 1729 | /* Now send the (possibly) fragmented message. */ |
1730 | list_for_each(pos, &datamsg->chunks) { | 1730 | list_for_each(pos, &datamsg->chunks) { |
1731 | chunk = list_entry(pos, struct sctp_chunk, frag_list); | 1731 | chunk = list_entry(pos, struct sctp_chunk, frag_list); |
1732 | sctp_datamsg_track(chunk); | 1732 | sctp_chunk_hold(chunk); |
1733 | 1733 | ||
1734 | /* Do accounting for the write space. */ | 1734 | /* Do accounting for the write space. */ |
1735 | sctp_set_owner_w(chunk); | 1735 | sctp_set_owner_w(chunk); |
@@ -1748,7 +1748,7 @@ SCTP_STATIC int sctp_sendmsg(struct kiocb *iocb, struct sock *sk, | |||
1748 | SCTP_DEBUG_PRINTK("We sent primitively.\n"); | 1748 | SCTP_DEBUG_PRINTK("We sent primitively.\n"); |
1749 | } | 1749 | } |
1750 | 1750 | ||
1751 | sctp_datamsg_free(datamsg); | 1751 | sctp_datamsg_put(datamsg); |
1752 | if (err) | 1752 | if (err) |
1753 | goto out_free; | 1753 | goto out_free; |
1754 | else | 1754 | else |