diff options
author | Mark Brown <broonie@linaro.org> | 2014-05-22 00:17:27 +0100 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-05-22 00:17:27 +0100 |
commit | bfbc344732badffe94f096f929e4a105b3b92d1f (patch) | |
tree | f4fc6c06108495bd2c33ecff68c065514e66a8cc /net/sctp/ulpevent.c | |
parent | c9eaa447e77efe77b7fa4c953bd62de8297fd6c5 (diff) | |
parent | c6466950e917890be3050171f6745ccb9d91d35f (diff) |
Merge tag 'mfd-regulator-v3.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd into regulator-bcm590xxx
Immutable branch between MFD and Regulator due for v3.16 merge-window.
Diffstat (limited to 'net/sctp/ulpevent.c')
-rw-r--r-- | net/sctp/ulpevent.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/net/sctp/ulpevent.c b/net/sctp/ulpevent.c index 8d198ae03606..85c64658bd0b 100644 --- a/net/sctp/ulpevent.c +++ b/net/sctp/ulpevent.c @@ -989,7 +989,7 @@ static void sctp_ulpevent_receive_data(struct sctp_ulpevent *event, skb = sctp_event2skb(event); /* Set the owner and charge rwnd for bytes received. */ sctp_ulpevent_set_owner(event, asoc); - sctp_assoc_rwnd_update(asoc, false); + sctp_assoc_rwnd_decrease(asoc, skb_headlen(skb)); if (!skb->data_len) return; @@ -1011,7 +1011,6 @@ static void sctp_ulpevent_release_data(struct sctp_ulpevent *event) { struct sk_buff *skb, *frag; unsigned int len; - struct sctp_association *asoc; /* Current stack structures assume that the rcv buffer is * per socket. For UDP style sockets this is not true as @@ -1036,11 +1035,8 @@ static void sctp_ulpevent_release_data(struct sctp_ulpevent *event) } done: - asoc = event->asoc; - sctp_association_hold(asoc); + sctp_assoc_rwnd_increase(event->asoc, len); sctp_ulpevent_release_owner(event); - sctp_assoc_rwnd_update(asoc, true); - sctp_association_put(asoc); } static void sctp_ulpevent_release_frag_data(struct sctp_ulpevent *event) |