diff options
author | Vlad Yasevich <vladislav.yasevich@hp.com> | 2006-10-09 21:34:04 -0700 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-10-11 23:59:44 -0700 |
commit | 331c4ee7faa4ee1e1404c872a139784753100498 (patch) | |
tree | c5bbae21fd17f7948ab2506cad4d6f2ecba911ee /include/net/sctp/ulpevent.h | |
parent | 6e8c751e07b34d73069e9333f67fbe5ffe31ec3a (diff) | |
download | blackbird-op-linux-331c4ee7faa4ee1e1404c872a139784753100498.tar.gz blackbird-op-linux-331c4ee7faa4ee1e1404c872a139784753100498.zip |
[SCTP]: Fix receive buffer accounting.
When doing receiver buffer accounting, we always used skb->truesize.
This is problematic when processing bundled DATA chunks because for
every DATA chunk that could be small part of one large skb, we would
charge the size of the entire skb. The new approach is to store the
size of the DATA chunk we are accounting for in the sctp_ulpevent
structure and use that stored value for accounting.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/sctp/ulpevent.h')
-rw-r--r-- | include/net/sctp/ulpevent.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/net/sctp/ulpevent.h b/include/net/sctp/ulpevent.h index 6c40cfc4832d..1a4ddc1ec7d2 100644 --- a/include/net/sctp/ulpevent.h +++ b/include/net/sctp/ulpevent.h @@ -63,6 +63,7 @@ struct sctp_ulpevent { __u32 cumtsn; int msg_flags; int iif; + unsigned int rmem_len; }; /* Retrieve the skb this event sits inside of. */ |