<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sctp/input.c, branch linux-2.6.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2006-10-31T02:55:11Z</updated>
<entry>
<title>[SCTP]: Remove temporary associations from backlog and hash.</title>
<updated>2006-10-31T02:55:11Z</updated>
<author>
<name>Vlad Yasevich</name>
</author>
<published>2006-10-31T02:55:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=de76e695a5ce19c121ba7e246b45f258be678a75'/>
<id>urn:sha1:de76e695a5ce19c121ba7e246b45f258be678a75</id>
<content type='text'>
Every time SCTP creates a temporary association, the stack hashes it,
puts it on a list of endpoint associations and increments the backlog.
However, the lifetime of a temporary association is the processing time
of a current packet and it's destroyed after that. In fact, we don't
really want anyone else finding this association. There is no reason to
do this extra work.

Signed-off-by: Vlad Yasevich &lt;vladislav.yasevich@hp.com&gt;
Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Always linearise packet on input</title>
<updated>2006-10-30T23:24:39Z</updated>
<author>
<name>Herbert Xu</name>
</author>
<published>2006-10-30T07:46:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=28cd7752734563d5b0967b96a6bade7a1dc89c7f'/>
<id>urn:sha1:28cd7752734563d5b0967b96a6bade7a1dc89c7f</id>
<content type='text'>
I was looking at a RHEL5 bug report involving Xen and SCTP
(https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=212550).
It turns out that SCTP wasn't written to handle skb fragments at
all.  The absence of any calls to skb_may_pull is testament to
that.

It just so happens that Xen creates fragmented packets more often
than other scenarios (header &amp; data split when going from domU to
dom0).  That's what caused this bug to show up.

Until someone has the time sits down and audits the entire net/sctp
directory, here is a conservative and safe solution that simply
linearises all packets on input.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Do not timestamp every SCTP packet.</title>
<updated>2006-09-30T00:10:03Z</updated>
<author>
<name>Vlad Yasevich</name>
</author>
<published>2006-09-30T00:10:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f236218b7292bccb0f8754a0feb5d9e9a06fe5a2'/>
<id>urn:sha1:f236218b7292bccb0f8754a0feb5d9e9a06fe5a2</id>
<content type='text'>
We only need the timestamp on COOKIE-ECHO chunks, so instead of always
timestamping every SCTP packet, let common code timestamp if the socket
option is set.  For COOKIE-ECHO, simply get the time of day if we don't
have a timestamp.  This introduces a small possibility that the cookie
may be considered expired, but it will be renegotiated.

Signed-off-by: Vlad Yasevich &lt;vladislav.yasevich@hp.com&gt;
Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Use correct mask when disabling PMTUD.</title>
<updated>2006-09-30T00:09:34Z</updated>
<author>
<name>Vlad Yasevich</name>
</author>
<published>2006-09-30T00:09:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b56bab46f3220eb6b1f71c000faa44c6b13fb148'/>
<id>urn:sha1:b56bab46f3220eb6b1f71c000faa44c6b13fb148</id>
<content type='text'>
Signed-off-by: Vlad Yasevich &lt;vladislav.yasevich@hp.com&gt;
Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Fix sk-&gt;sk_filter field access</title>
<updated>2006-09-22T22:18:47Z</updated>
<author>
<name>Dmitry Mishin</name>
</author>
<published>2006-08-31T22:28:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fda9ef5d679b07c9d9097aaf6ef7f069d794a8f9'/>
<id>urn:sha1:fda9ef5d679b07c9d9097aaf6ef7f069d794a8f9</id>
<content type='text'>
Function sk_filter() is called from tcp_v{4,6}_rcv() functions with arg
needlock = 0, while socket is not locked at that moment. In order to avoid
this and similar issues in the future, use rcu for sk-&gt;sk_filter field read
protection.

Signed-off-by: Dmitry Mishin &lt;dim@openvz.org&gt;
Signed-off-by: Alexey Kuznetsov &lt;kuznet@ms2.inr.ac.ru&gt;
Signed-off-by: Kirill Korotaev &lt;dev@openvz.org&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Extend /proc/net/sctp/snmp to provide more statistics.</title>
<updated>2006-09-22T21:55:16Z</updated>
<author>
<name>Sridhar Samudrala</name>
</author>
<published>2006-08-22T07:15:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac0b04627269ff16c3c7ab854a65fe6780c6e3e5'/>
<id>urn:sha1:ac0b04627269ff16c3c7ab854a65fe6780c6e3e5</id>
<content type='text'>
This patch adds more statistics info under /proc/net/sctp/snmp
that should be useful for debugging. The additional events that
are counted now include timer expirations, retransmits, packet
and data chunk discards.

The Data chunk discards include all the cases where a data chunk
is discarded including high tsn, bad stream, dup tsn and the most
useful one(out of receive buffer/rwnd).

Also moved the SCTP MIB data structures from the generic include
directories to include/sctp/sctp.h.

Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Don't do CRC32C checksum over loopback.</title>
<updated>2006-06-18T05:57:28Z</updated>
<author>
<name>Sridhar Samudrala</name>
</author>
<published>2006-06-18T05:57:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=503b55fd77d11381b1950d1651d3bc782c0cc2cd'/>
<id>urn:sha1:503b55fd77d11381b1950d1651d3bc782c0cc2cd</id>
<content type='text'>
Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Reject sctp packets with broadcast addresses.</title>
<updated>2006-06-18T05:55:35Z</updated>
<author>
<name>Vlad Yasevich</name>
</author>
<published>2006-06-18T05:55:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5636bef7324f49e36f05ec8a5f6284e11b1bcca4'/>
<id>urn:sha1:5636bef7324f49e36f05ec8a5f6284e11b1bcca4</id>
<content type='text'>
Signed-off-by: Vlad Yasevich &lt;vladislav.yasevich@hp.com&gt;
Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[SCTP]: A better solution to fix the race between sctp_peeloff() and</title>
<updated>2006-05-19T18:01:18Z</updated>
<author>
<name>Vladislav Yasevich</name>
</author>
<published>2006-05-19T18:01:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=61c9fed41638249f8b6ca5345064eb1beb50179f'/>
<id>urn:sha1:61c9fed41638249f8b6ca5345064eb1beb50179f</id>
<content type='text'>
sctp_rcv().

The goal is to hold the ref on the association/endpoint throughout the
state-machine process.  We accomplish like this:

  /* ref on the assoc/ep is taken during lookup */

  if owned_by_user(sk)
 	sctp_add_backlog(skb, sk);
  else
 	inqueue_push(skb, sk);

  /* drop the ref on the assoc/ep */

However, in sctp_add_backlog() we take the ref on assoc/ep and hold it
while the skb is on the backlog queue.  This allows us to get rid of the
sock_hold/sock_put in the lookup routines.

Now sctp_backlog_rcv() needs to account for potential association move.
In the unlikely event that association moved, we need to retest if the
new socket is locked by user.  If we don't this, we may have two packets
racing up the stack toward the same socket and we can't deal with it.
If the new socket is still locked, we'll just add the skb to its backlog
continuing to hold the ref on the association.  This get's rid of the
need to move packets from one backlog to another and it also safe in
case new packets arrive on the same backlog queue.

The last step, is to lock the new socket when we are moving the
association to it.  This is needed in case any new packets arrive on
the association when it moved.  We want these to go to the backlog since
we would like to avoid the race between this new packet and a packet
that may be sitting on the backlog queue of the old socket toward the
same association.

Signed-off-by: Vladislav Yasevich &lt;vladislav.yasevich@hp.com&gt;
Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>[SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure.</title>
<updated>2006-05-19T17:58:12Z</updated>
<author>
<name>Sridhar Samudrala</name>
</author>
<published>2006-05-19T17:58:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8de8c8738086501bbe3057ed6f4b70dded657488'/>
<id>urn:sha1:8de8c8738086501bbe3057ed6f4b70dded657488</id>
<content type='text'>
Also fix some other cases where sk_err is not set for 1-1 style sockets.

Signed-off-by: Sridhar Samudrala &lt;sri@us.ibm.com&gt;
</content>
</entry>
</feed>
