<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/net/sock.h, branch v3.0.62</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/include/net/sock.h?h=v3.0.62</id>
<link rel='self' href='https://git.amat.us/linux/atom/include/net/sock.h?h=v3.0.62'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-10-02T16:47:04Z</updated>
<entry>
<title>tcp: Apply device TSO segment limit earlier</title>
<updated>2012-10-02T16:47:04Z</updated>
<author>
<name>Ben Hutchings</name>
<email>bhutchings@solarflare.com</email>
</author>
<published>2012-07-30T16:11:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=09c403dc7c8e73a4f9c553e4d84aef68af25ff65'/>
<id>urn:sha1:09c403dc7c8e73a4f9c553e4d84aef68af25ff65</id>
<content type='text'>
[ Upstream commit 1485348d2424e1131ea42efc033cbd9366462b01 ]

Cache the device gso_max_segs in sock::sk_gso_max_segs and use it to
limit the size of TSO skbs.  This avoids the need to fall back to
software GSO for local TCP senders.

Signed-off-by: Ben Hutchings &lt;bhutchings@solarflare.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Fix some kernel-doc warnings</title>
<updated>2011-06-27T23:06:19Z</updated>
<author>
<name>Vitaliy Ivanov</name>
<email>vitalivanov@gmail.com</email>
</author>
<published>2011-06-27T16:07:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4d258b25d947521c8b913154db61ec55198243f8'/>
<id>urn:sha1:4d258b25d947521c8b913154db61ec55198243f8</id>
<content type='text'>
Fix 'make htmldocs' warnings:

  Warning(/include/linux/hrtimer.h:153): No description found for parameter 'clockid'
  Warning(/include/linux/device.h:604): Excess struct/union/enum/typedef member 'of_match' description in 'device'
  Warning(/include/net/sock.h:349): Excess struct/union/enum/typedef member 'sk_rmem_alloc' description in 'sock'

Signed-off-by: Vitaliy Ivanov &lt;vitalivanov@gmail.com&gt;
Acked-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Acked-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2011-04-11T20:44:25Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-04-11T20:44:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1c01a80cfec6f806246f31ff2680cd3639b30e67'/>
<id>urn:sha1:1c01a80cfec6f806246f31ff2680cd3639b30e67</id>
<content type='text'>
Conflicts:
	drivers/net/smsc911x.c
</content>
</entry>
<entry>
<title>net: fix skb_add_data_nocache() to calc csum correctly</title>
<updated>2011-04-07T06:05:01Z</updated>
<author>
<name>Wei Yongjun</name>
<email>yjwei@cn.fujitsu.com</email>
</author>
<published>2011-04-06T18:40:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=912d398d28b4359c2fb1f3763f1ce4f86de8350e'/>
<id>urn:sha1:912d398d28b4359c2fb1f3763f1ce4f86de8350e</id>
<content type='text'>
commit c6e1a0d12ca7b4f22c58e55a16beacfb7d3d8462 broken the calc
 (net: Allow no-cache copy from user on transmit)
of checksum, which may cause some tcp packets be dropped because
incorrect checksum. ssh does not work under today's net-next-2.6
tree.

Signed-off-by: Wei Yongjun &lt;yjwei@cn.fujitsu.com&gt;
Acked-by: Tom Herbert &lt;therbert@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: Allow no-cache copy from user on transmit</title>
<updated>2011-04-05T05:30:30Z</updated>
<author>
<name>Tom Herbert</name>
<email>therbert@google.com</email>
</author>
<published>2011-04-05T05:30:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c6e1a0d12ca7b4f22c58e55a16beacfb7d3d8462'/>
<id>urn:sha1:c6e1a0d12ca7b4f22c58e55a16beacfb7d3d8462</id>
<content type='text'>
This patch uses __copy_from_user_nocache on transmit to bypass data
cache for a performance improvement.  skb_add_data_nocache and
skb_copy_to_page_nocache can be called by sendmsg functions to use
this feature, initial support is in tcp_sendmsg.  This functionality is
configurable per device using ethtool.

Presumably, this feature would only be useful when the driver does
not touch the data.  The feature is turned on by default if a device
indicates that it does some form of checksum offload; it is off by
default for devices that do no checksum offload or indicate no checksum
is necessary.  For the former case copy-checksum is probably done
anyway, in the latter case the device is likely loopback in which case
the no cache copy is probably not beneficial.

This patch was tested using 200 instances of netperf TCP_RR with
1400 byte request and one byte reply.  Platform is 16 core AMD x86.

No-cache copy disabled:
   672703 tps, 97.13% utilization
   50/90/99% latency:244.31 484.205 1028.41

No-cache copy enabled:
   702113 tps, 96.16% utilization,
   50/90/99% latency 238.56 467.56 956.955

Using 14000 byte request and response sizes demonstrate the
effects more dramatically:

No-cache copy disabled:
   79571 tps, 34.34 %utlization
   50/90/95% latency 1584.46 2319.59 5001.76

No-cache copy enabled:
   83856 tps, 34.81% utilization
   50/90/95% latency 2508.42 2622.62 2735.88

Note especially the effect on latency tail (95th percentile).

This seems to provide a nice performance improvement and is
consistent in the tests I ran.  Presumably, this would provide
the greatest benfits in the presence of an application workload
stressing the cache and a lot of transmit data happening.

Signed-off-by: Tom Herbert &lt;therbert@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Fix common misspellings</title>
<updated>2011-03-31T14:26:23Z</updated>
<author>
<name>Lucas De Marchi</name>
<email>lucas.demarchi@profusion.mobi</email>
</author>
<published>2011-03-31T01:57:33Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=25985edcedea6396277003854657b5f3cb31a628'/>
<id>urn:sha1:25985edcedea6396277003854657b5f3cb31a628</id>
<content type='text'>
Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi &lt;lucas.demarchi@profusion.mobi&gt;
</content>
</entry>
<entry>
<title>net: add __rcu annotations to sk_wq and wq</title>
<updated>2011-02-22T18:19:31Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-02-18T03:26:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=eaefd1105bc431ef329599e307a07f2a36ae7872'/>
<id>urn:sha1:eaefd1105bc431ef329599e307a07f2a36ae7872</id>
<content type='text'>
Add proper RCU annotations/verbs to sk_wq and wq members

Fix __sctp_write_space() sk_sleep() abuse (and sock-&gt;wq access)

Fix sunrpc sk_sleep() abuse too

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2011-01-31T21:13:24Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-01-31T21:13:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5403c8a29521a6eb02f9283dbbe0184527f8f42b'/>
<id>urn:sha1:5403c8a29521a6eb02f9283dbbe0184527f8f42b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>net: Add compat ioctl support for the ipv4 multicast ioctl SIOCGETSGCNT</title>
<updated>2011-01-30T09:14:38Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2011-01-29T16:15:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=709b46e8d90badda1898caea50483c12af178e96'/>
<id>urn:sha1:709b46e8d90badda1898caea50483c12af178e96</id>
<content type='text'>
SIOCGETSGCNT is not a unique ioctl value as it it maps tio SIOCPROTOPRIVATE +1,
which unfortunately means the existing infrastructure for compat networking
ioctls is insufficient.  A trivial compact ioctl implementation would conflict
with:

SIOCAX25ADDUID
SIOCAIPXPRISLT
SIOCGETSGCNT_IN6
SIOCGETSGCNT
SIOCRSSCAUSE
SIOCX25SSUBSCRIP
SIOCX25SDTEFACILITIES

To make this work I have updated the compat_ioctl decode path to mirror the
the normal ioctl decode path.  I have added an ipv4 inet_compat_ioctl function
so that I can have ipv4 specific compat ioctls.   I have added a compat_ioctl
function into struct proto so I can break out ioctls by which kind of ip socket
I am using.  I have added a compat_raw_ioctl function because SIOCGETSGCNT only
works on raw sockets.  I have added a ipmr_compat_ioctl that mirrors the normal
ipmr_ioctl.

This was necessary because unfortunately the struct layout for the SIOCGETSGCNT
has unsigned longs in it so changes between 32bit and 64bit kernels.

This change was sufficient to run a 32bit ip multicast routing daemon on a
64bit kernel.

Reported-by: Bill Fenner &lt;fenner@aristanetworks.com&gt;
Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: filter: dont block softirqs in sk_run_filter()</title>
<updated>2011-01-19T05:33:05Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-01-18T07:46:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=80f8f1027b99660897bdeaeae73002185d829906'/>
<id>urn:sha1:80f8f1027b99660897bdeaeae73002185d829906</id>
<content type='text'>
Packet filter (BPF) doesnt need to disable softirqs, being fully
re-entrant and lock-less.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
