<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net, branch v2.6.35</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/net?h=v2.6.35</id>
<link rel='self' href='https://git.amat.us/linux/atom/net?h=v2.6.35'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2010-07-27T16:21:00Z</updated>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2010-07-27T16:21:00Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2010-07-27T16:21:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a376bca61096c7a79393e8125b7ad4757ccff19c'/>
<id>urn:sha1:a376bca61096c7a79393e8125b7ad4757ccff19c</id>
<content type='text'>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
  s2io: fixing DBG_PRINT() macro
  ath9k: fix dma direction for map/unmap in ath_rx_tasklet
  net: dev_forward_skb should call nf_reset
  net sched: fix race in mirred device removal
  tun: avoid BUG, dump packet on GSO errors
  bonding: set device in RLB ARP packet handler
  wimax/i2400m: Add PID &amp; VID for Intel WiMAX 6250
  ipv6: Don't add routes to ipv6 disabled interfaces.
  net: Fix skb_copy_expand() handling of -&gt;csum_start
  net: Fix corruption of skb csum field in pskb_expand_head() of net/core/skbuff.c
  macvtap: Limit packet queue length
  ixgbe/igb: catch invalid VF settings
  bnx2x: Advance a module version
  bnx2x: Protect statistics ramrod and sequence number
  bnx2x: Protect a SM state change
  wireless: use netif_rx_ni in ieee80211_send_layer2_update
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6</title>
<updated>2010-07-26T20:26:09Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2010-07-26T20:26:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a9ad99a612763803b995ce551ca43b20beb1f888'/>
<id>urn:sha1:a9ad99a612763803b995ce551ca43b20beb1f888</id>
<content type='text'>
</content>
</entry>
<entry>
<title>net: dev_forward_skb should call nf_reset</title>
<updated>2010-07-26T04:58:46Z</updated>
<author>
<name>Ben Greear</name>
<email>greearb@candelatech.com</email>
</author>
<published>2010-07-22T09:54:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c736eefadb71a01a5e61e0de700f28f6952b4444'/>
<id>urn:sha1:c736eefadb71a01a5e61e0de700f28f6952b4444</id>
<content type='text'>
With conn-track zones and probably with different network
namespaces, the netfilter logic needs to be re-calculated
on packet receive.  If the netfilter logic is not reset,
it will not be recalculated properly.  This patch adds
the nf_reset logic to dev_forward_skb.

Signed-off-by: Ben Greear &lt;greearb@candelatech.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net sched: fix race in mirred device removal</title>
<updated>2010-07-25T04:04:20Z</updated>
<author>
<name>stephen hemminger</name>
<email>shemminger@vyatta.com</email>
</author>
<published>2010-07-22T18:45:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3b87956ea645fb4de7e59c7d0aa94de04be72615'/>
<id>urn:sha1:3b87956ea645fb4de7e59c7d0aa94de04be72615</id>
<content type='text'>
This fixes hang when target device of mirred packet classifier
action is removed.

If a mirror or redirection action is configured to cause packets
to go to another device, the classifier holds a ref count, but was assuming
the adminstrator cleaned up all redirections before removing. The fix
is to add a notifier and cleanup during unregister.

The new list is implicitly protected by RTNL mutex because
it is held during filter add/delete as well as notifier.

Signed-off-by: Stephen Hemminger &lt;shemminger@vyatta.com&gt;
Acked-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: Don't add routes to ipv6 disabled interfaces.</title>
<updated>2010-07-22T20:41:32Z</updated>
<author>
<name>Brian Haley</name>
<email>brian.haley@hp.com</email>
</author>
<published>2010-07-20T10:34:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=64e724f62ab743d55229cd5e27ec8b068b68eb16'/>
<id>urn:sha1:64e724f62ab743d55229cd5e27ec8b068b68eb16</id>
<content type='text'>
If the interface has IPv6 disabled, don't add a multicast or
link-local route since we won't be adding a link-local address.

Reported-by: Mahesh Kelkar &lt;maheshkelkar@gmail.com&gt;
Signed-off-by: Brian Haley &lt;brian.haley@hp.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: Fix skb_copy_expand() handling of -&gt;csum_start</title>
<updated>2010-07-22T20:27:09Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2010-07-22T20:27:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=be2b6e62357dd7ee56bdcb05e54002afb4830292'/>
<id>urn:sha1:be2b6e62357dd7ee56bdcb05e54002afb4830292</id>
<content type='text'>
It should only be adjusted if ip_summed == CHECKSUM_PARTIAL.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: Fix corruption of skb csum field in pskb_expand_head() of net/core/skbuff.c</title>
<updated>2010-07-22T20:25:18Z</updated>
<author>
<name>Andrea Shepard</name>
<email>andrea@persephoneslair.org</email>
</author>
<published>2010-07-22T09:12:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=00c5a9834b476a138158fb17d576da751727a9f1'/>
<id>urn:sha1:00c5a9834b476a138158fb17d576da751727a9f1</id>
<content type='text'>
Make pskb_expand_head() check ip_summed to make sure csum_start is really
csum_start and not csum before adjusting it.

This fixes a bug I encountered using a Sun Quad-Fast Ethernet card and VLANs.
On my configuration, the sunhme driver produces skbs with differing amounts
of headroom on receive depending on the packet size.  See line 2030 of
drivers/net/sunhme.c; packets smaller than RX_COPY_THRESHOLD have 52 bytes
of headroom but packets larger than that cutoff have only 20 bytes.

When these packets reach the VLAN driver, vlan_check_reorder_header()
calls skb_cow(), which, if the packet has less than NET_SKB_PAD (== 32) bytes
of headroom, uses pskb_expand_head() to make more.

Then, pskb_expand_head() needs to adjust a lot of offsets into the skb,
including csum_start.  Since csum_start is a union with csum, if the packet
has a valid csum value this will corrupt it, which was the effect I observed.
The sunhme hardware computes receive checksums, so the skbs would be created
by the driver with ip_summed == CHECKSUM_COMPLETE and a valid csum field, and
then pskb_expand_head() would corrupt the csum field, leading to an "hw csum
error" message later on, for example in icmp_rcv() for pings larger than the
sunhme RX_COPY_THRESHOLD.

On the basis of the comment at the beginning of include/linux/skbuff.h,
I believe that the csum_start skb field is only meaningful if ip_csummed is
CSUM_PARTIAL, so this patch makes pskb_expand_head() adjust it only in that
case to avoid corrupting a valid csum value.

Please see my more in-depth disucssion of tracking down this bug for
more details if you like:

http://puellavulnerata.livejournal.com/112186.html
http://puellavulnerata.livejournal.com/112567.html
http://puellavulnerata.livejournal.com/112891.html
http://puellavulnerata.livejournal.com/113096.html
http://puellavulnerata.livejournal.com/113591.html

I am not subscribed to this list, so please CC me on replies.

Signed-off-by: Andrea Shepard &lt;andrea@persephoneslair.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mm: add context argument to shrinker callback to remaining shrinkers</title>
<updated>2010-07-21T05:33:01Z</updated>
<author>
<name>Dave Chinner</name>
<email>dchinner@redhat.com</email>
</author>
<published>2010-07-21T05:33:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=567c7b0edec0200c5c6613f07c3d3b4034fdc836'/>
<id>urn:sha1:567c7b0edec0200c5c6613f07c3d3b4034fdc836</id>
<content type='text'>
Add the shrinkers missed in the first conversion of the API in
commit 7f8275d0d660c146de6ee3017e1e2e594c49e820 ("mm: add context argument to
shrinker callback").

Signed-off-by: Dave Chinner &lt;dchinner@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2010-07-20T23:26:42Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2010-07-20T23:26:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=516bd664153d76f5c814633cee6500e2ff8e861b'/>
<id>urn:sha1:516bd664153d76f5c814633cee6500e2ff8e861b</id>
<content type='text'>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (24 commits)
  bridge: Partially disable netpoll support
  tcp: fix crash in tcp_xmit_retransmit_queue
  IPv6: fix CoA check in RH2 input handler (mip6_rthdr_input())
  ibmveth: lost IRQ while closing/opening device leads to service loss
  rt2x00: Fix lockdep warning in rt2x00lib_probe_dev()
  vhost: avoid pr_err on condition guest can trigger
  ipmr: Don't leak memory if fib lookup fails.
  vhost-net: avoid flush under lock
  net: fix problem in reading sock TX queue
  net/core: neighbour update Oops
  net: skb_tx_hash() fix relative to skb_orphan_try()
  rfs: call sock_rps_record_flow() in tcp_splice_read()
  xfrm: do not assume that template resolving always returns xfrms
  hostap_pci: set dev-&gt;base_addr during probe
  axnet_cs: use spin_lock_irqsave in ax_interrupt
  dsa: Fix Kconfig dependencies.
  act_nat: not all of the ICMP packets need an IP header payload
  r8169: incorrect identifier for a 8168dp
  Phonet: fix skb leak in pipe endpoint accept()
  Bluetooth: Update sec_level/auth_type for already existing connections
  ...
</content>
</entry>
<entry>
<title>wireless: use netif_rx_ni in ieee80211_send_layer2_update</title>
<updated>2010-07-20T19:55:12Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2010-07-19T15:52:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=06ee1c261360545c97fd836fff9dbd10ebd9301b'/>
<id>urn:sha1:06ee1c261360545c97fd836fff9dbd10ebd9301b</id>
<content type='text'>
These synthetic frames are all triggered from userland requests in
process context.

https://bugzilla.kernel.org/show_bug.cgi?id=16412

Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
</feed>
