<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/net, branch v3.4.31</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/net?h=v3.4.31</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/net?h=v3.4.31'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-02-14T18:49:07Z</updated>
<entry>
<title>be2net: Fix to trim skb for padded vlan packets to workaround an ASIC Bug</title>
<updated>2013-02-14T18:49:07Z</updated>
<author>
<name>Somnath Kotur</name>
<email>somnath.kotur@emulex.com</email>
</author>
<published>2012-06-26T22:32:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=495f02922e05a6858005dc6b9e07eeed026cf9a0'/>
<id>urn:sha1:495f02922e05a6858005dc6b9e07eeed026cf9a0</id>
<content type='text'>
commit 93040ae5cc8dcc893eca4a4366dc8415af278edf upstream.

Fixed spelling error in a comment as pointed out by DaveM.
Also refactored existing code a bit to provide placeholders for another ASIC
Bug workaround that will be checked-in soon after this.

Signed-off-by: Somnath Kotur &lt;somnath.kotur@emulex.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Jacek Luczak &lt;difrost.kernel@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>tg3: Fix crc errors on jumbo frame receive</title>
<updated>2013-02-14T18:49:07Z</updated>
<author>
<name>Nithin Nayak Sujir</name>
<email>nsujir@broadcom.com</email>
</author>
<published>2013-01-14T17:11:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=eac7b44eb80d3e1fa3310ad2dc57e10c2fc970fd'/>
<id>urn:sha1:eac7b44eb80d3e1fa3310ad2dc57e10c2fc970fd</id>
<content type='text'>
[ Upstream commit daf3ec688e057f6060fb9bb0819feac7a8bbf45c ]

TG3_PHY_AUXCTL_SMDSP_ENABLE/DISABLE macros do a blind write to the phy
auxiliary control register and overwrite the EXT_PKT_LEN (bit 14) resulting
in intermittent crc errors on jumbo frames with some link partners. Change
the code to do a read/modify/write.

Signed-off-by: Nithin Nayak Sujir &lt;nsujir@broadcom.com&gt;
Signed-off-by: Michael Chan &lt;mchan@broadcom.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>tg3: Avoid null pointer dereference in tg3_interrupt in netconsole mode</title>
<updated>2013-02-14T18:49:07Z</updated>
<author>
<name>Nithin Nayak Sujir</name>
<email>nsujir@broadcom.com</email>
</author>
<published>2013-01-14T17:10:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a10a3daa591e6ea2619da1e0418af2a30aa77ac5'/>
<id>urn:sha1:a10a3daa591e6ea2619da1e0418af2a30aa77ac5</id>
<content type='text'>
[ Upstream commit 9c13cb8bb477a83b9a3c9e5a5478a4e21294a760 ]

When netconsole is enabled, logging messages generated during tg3_open
can result in a null pointer dereference for the uninitialized tg3
status block. Use the irq_sync flag to disable polling in the early
stages. irq_sync is cleared when the driver is enabling interrupts after
all initialization is completed.

Signed-off-by: Nithin Nayak Sujir &lt;nsujir@broadcom.com&gt;
Signed-off-by: Michael Chan &lt;mchan@broadcom.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>netback: correct netbk_tx_err to handle wrap around.</title>
<updated>2013-02-14T18:49:06Z</updated>
<author>
<name>Ian Campbell</name>
<email>Ian.Campbell@citrix.com</email>
</author>
<published>2013-02-06T23:41:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=42671f1e6fd8922b071bd3fd3e0cfad7226c654d'/>
<id>urn:sha1:42671f1e6fd8922b071bd3fd3e0cfad7226c654d</id>
<content type='text'>
[ Upstream commit b9149729ebdcfce63f853aa54a404c6a8f6ebbf3 ]

Signed-off-by: Ian Campbell &lt;ian.campbell@citrix.com&gt;
Acked-by: Jan Beulich &lt;JBeulich@suse.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>xen/netback: free already allocated memory on failure in xen_netbk_get_requests</title>
<updated>2013-02-14T18:49:06Z</updated>
<author>
<name>Ian Campbell</name>
<email>Ian.Campbell@citrix.com</email>
</author>
<published>2013-02-06T23:41:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=90ffc8f3315b0d296fea07fbc6fef87155f81f45'/>
<id>urn:sha1:90ffc8f3315b0d296fea07fbc6fef87155f81f45</id>
<content type='text'>
[ Upstream commit 4cc7c1cb7b11b6f3515bd9075527576a1eecc4aa ]

Signed-off-by: Ian Campbell &lt;ian.campbell@citrix.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>xen/netback: don't leak pages on failure in xen_netbk_tx_check_gop.</title>
<updated>2013-02-14T18:49:06Z</updated>
<author>
<name>Matthew Daley</name>
<email>mattjd@gmail.com</email>
</author>
<published>2013-02-06T23:41:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=33eb2607ebfcb68bc9ae8ab029f916f1f4ee5097'/>
<id>urn:sha1:33eb2607ebfcb68bc9ae8ab029f916f1f4ee5097</id>
<content type='text'>
[ Upstream commit 7d5145d8eb2b9791533ffe4dc003b129b9696c48 ]

Signed-off-by: Matthew Daley &lt;mattjd@gmail.com&gt;
Reviewed-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Acked-by: Ian Campbell &lt;ian.campbell@citrix.com&gt;
Acked-by: Jan Beulich &lt;JBeulich@suse.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>xen/netback: shutdown the ring if it contains garbage.</title>
<updated>2013-02-14T18:49:06Z</updated>
<author>
<name>Ian Campbell</name>
<email>Ian.Campbell@citrix.com</email>
</author>
<published>2013-02-06T23:41:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=be7254fc6c92c016a6768cc30596198c61043ff5'/>
<id>urn:sha1:be7254fc6c92c016a6768cc30596198c61043ff5</id>
<content type='text'>
[ Upstream commit 48856286b64e4b66ec62b94e504d0b29c1ade664 ]

A buggy or malicious frontend should not be able to confuse netback.
If we spot anything which is not as it should be then shutdown the
device and don't try to continue with the ring in a potentially
hostile state. Well behaved and non-hostile frontends will not be
penalised.

As well as making the existing checks for such errors fatal also add a
new check that ensures that there isn't an insane number of requests
on the ring (i.e. more than would fit in the ring). If the ring
contains garbage then previously is was possible to loop over this
insane number, getting an error each time and therefore not generating
any more pending requests and therefore not exiting the loop in
xen_netbk_tx_build_gops for an externded period.

Also turn various netdev_dbg calls which no precipitate a fatal error
into netdev_err, they are rate limited because the device is shutdown
afterwards.

This fixes at least one known DoS/softlockup of the backend domain.

Signed-off-by: Ian Campbell &lt;ian.campbell@citrix.com&gt;
Reviewed-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Acked-by: Jan Beulich &lt;JBeulich@suse.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>via-rhine: Fix bugs in NAPI support.</title>
<updated>2013-02-14T18:49:05Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2013-01-30T03:58:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d78378096e74b2fd0b42b74156ba0ae0567ea226'/>
<id>urn:sha1:d78378096e74b2fd0b42b74156ba0ae0567ea226</id>
<content type='text'>
[ Upstream commit 559bcac35facfed49ab4f408e162971612dcfdf3 ]

1) rhine_tx() should use dev_kfree_skb() not dev_kfree_skb_irq()

2) rhine_slow_event_task's NAPI triggering logic is racey, it
   should just hit the interrupt mask register.  This is the
   same as commit 7dbb491878a2c51d372a8890fa45a8ff80358af1
   ("r8169: avoid NAPI scheduling delay.") made to fix the same
   problem in the r8169 driver.  From Francois Romieu.

Reported-by: Jamie Gloudon &lt;jamie.gloudon@gmail.com&gt;
Tested-by: Jamie Gloudon &lt;jamie.gloudon@gmail.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>net: loopback: fix a dst refcounting issue</title>
<updated>2013-02-14T18:49:04Z</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2013-01-25T07:44:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e38660420e8e12d7fd6b58069d985b6298aad176'/>
<id>urn:sha1:e38660420e8e12d7fd6b58069d985b6298aad176</id>
<content type='text'>
[ Upstream commit 794ed393b707f01858f5ebe2ae5eabaf89d00022 ]

Ben Greear reported crashes in ip_rcv_finish() on a stress
test involving many macvlans.

We tracked the bug to a dst use after free. ip_rcv_finish()
was calling dst-&gt;input() and got garbage for dst-&gt;input value.

It appears the bug is in loopback driver, lacking
a skb_dst_force() before calling netif_rx().

As a result, a non refcounted dst, normally protected by a
RCU read_lock section, was escaping this section and could
be freed before the packet being processed.

  [&lt;ffffffff813a3c4d&gt;] loopback_xmit+0x64/0x83
  [&lt;ffffffff81477364&gt;] dev_hard_start_xmit+0x26c/0x35e
  [&lt;ffffffff8147771a&gt;] dev_queue_xmit+0x2c4/0x37c
  [&lt;ffffffff81477456&gt;] ? dev_hard_start_xmit+0x35e/0x35e
  [&lt;ffffffff8148cfa6&gt;] ? eth_header+0x28/0xb6
  [&lt;ffffffff81480f09&gt;] neigh_resolve_output+0x176/0x1a7
  [&lt;ffffffff814ad835&gt;] ip_finish_output2+0x297/0x30d
  [&lt;ffffffff814ad6d5&gt;] ? ip_finish_output2+0x137/0x30d
  [&lt;ffffffff814ad90e&gt;] ip_finish_output+0x63/0x68
  [&lt;ffffffff814ae412&gt;] ip_output+0x61/0x67
  [&lt;ffffffff814ab904&gt;] dst_output+0x17/0x1b
  [&lt;ffffffff814adb6d&gt;] ip_local_out+0x1e/0x23
  [&lt;ffffffff814ae1c4&gt;] ip_queue_xmit+0x315/0x353
  [&lt;ffffffff814adeaf&gt;] ? ip_send_unicast_reply+0x2cc/0x2cc
  [&lt;ffffffff814c018f&gt;] tcp_transmit_skb+0x7ca/0x80b
  [&lt;ffffffff814c3571&gt;] tcp_connect+0x53c/0x587
  [&lt;ffffffff810c2f0c&gt;] ? getnstimeofday+0x44/0x7d
  [&lt;ffffffff810c2f56&gt;] ? ktime_get_real+0x11/0x3e
  [&lt;ffffffff814c6f9b&gt;] tcp_v4_connect+0x3c2/0x431
  [&lt;ffffffff814d6913&gt;] __inet_stream_connect+0x84/0x287
  [&lt;ffffffff814d6b38&gt;] ? inet_stream_connect+0x22/0x49
  [&lt;ffffffff8108d695&gt;] ? _local_bh_enable_ip+0x84/0x9f
  [&lt;ffffffff8108d6c8&gt;] ? local_bh_enable+0xd/0x11
  [&lt;ffffffff8146763c&gt;] ? lock_sock_nested+0x6e/0x79
  [&lt;ffffffff814d6b38&gt;] ? inet_stream_connect+0x22/0x49
  [&lt;ffffffff814d6b49&gt;] inet_stream_connect+0x33/0x49
  [&lt;ffffffff814632c6&gt;] sys_connect+0x75/0x98

This bug was introduced in linux-2.6.35, in commit
7fee226ad2397b (net: add a noref bit on skb dst)

skb_dst_force() is enforced in dev_queue_xmit() for devices having a
qdisc.

Reported-by: Ben Greear &lt;greearb@candelatech.com&gt;
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Tested-by: Ben Greear &lt;greearb@candelatech.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>r8169: remove the obsolete and incorrect AMD workaround</title>
<updated>2013-02-14T18:49:04Z</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2013-01-21T22:30:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=646e28ceca9036d5b2e76f4b116bba0bc60081c1'/>
<id>urn:sha1:646e28ceca9036d5b2e76f4b116bba0bc60081c1</id>
<content type='text'>
[ Upstream commit 5d0feaff230c0abfe4a112e6f09f096ed99e0b2d ]

This was introduced in commit 6dccd16 "r8169: merge with version
6.001.00 of Realtek's r8169 driver". I did not find the version
6.001.00 online, but in 6.002.00 or any later r8169 from Realtek
this hunk is no longer present.

Also commit 05af214 "r8169: fix Ethernet Hangup for RTL8110SC
rev d" claims to have fixed this issue otherwise.

The magic compare mask of 0xfffe000 is dubious as it masks
parts of the Reserved part, and parts of the VLAN tag. But this
does not make much sense as the VLAN tag parts are perfectly
valid there. In matter of fact this seems to be triggered with
any VLAN tagged packet as RxVlanTag bit is matched. I would
suspect 0xfffe0000 was intended to test reserved part only.

Finally, this hunk is evil as it can cause more packets to be
handled than what was NAPI quota causing net/core/dev.c:
net_rx_action(): WARN_ON_ONCE(work &gt; weight) to trigger, and
mess up the NAPI state causing device to hang.

As result, any system using VLANs and having high receive
traffic (so that NAPI poll budget limits rtl_rx) would result
in device hang.

Signed-off-by: Timo Teräs &lt;timo.teras@iki.fi&gt;
Acked-by: Francois Romieu &lt;romieu@fr.zoreil.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>
</feed>
