<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/net/ethernet, branch v3.2.29</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.2.29</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.2.29'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2012-08-19T17:15:32Z</updated>
<entry>
<title>e1000e: NIC goes up and immediately goes down</title>
<updated>2012-08-19T17:15:32Z</updated>
<author>
<name>Tushar Dave</name>
<email>tushar.n.dave@intel.com</email>
</author>
<published>2012-07-31T02:02:43Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d12284de6c7785808ed76ca3d55d243e5c9e81a6'/>
<id>urn:sha1:d12284de6c7785808ed76ca3d55d243e5c9e81a6</id>
<content type='text'>
commit b7ec70be01a87f2c85df3ae11046e74f9b67e323 upstream.

Found that commit d478eb44 was a bad commit.
If the link partner is transmitting codeword (even if NULL codeword),
then the RXCW.C bit will be set so check for RXCW.CW is unnecessary.
Ref: RH BZ 840642

Reported-by: Fabio Futigami &lt;ffutigam@redhat.com&gt;
Signed-off-by: Tushar Dave &lt;tushar.n.dave@intel.com&gt;
CC: Marcelo Ricardo Leitner &lt;mleitner@redhat.com&gt;
Tested-by: Aaron Brown &lt;aaron.f.brown@intel.com&gt;
Signed-off-by: Peter P Waskiewicz Jr &lt;peter.p.waskiewicz.jr@intel.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>e1000: add dropped DMA receive enable back in for WoL</title>
<updated>2012-08-19T17:15:26Z</updated>
<author>
<name>Dean Nelson</name>
<email>dnelson@redhat.com</email>
</author>
<published>2012-01-19T17:47:24Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=5d04d60bae47f2da14bc7a8286d802a2b3c28e4b'/>
<id>urn:sha1:5d04d60bae47f2da14bc7a8286d802a2b3c28e4b</id>
<content type='text'>
commit b868179c47e9e8eadcd04c1f3105998e528988a3 upstream.

Commit d5bc77a223b0e9b9dfb002048d2b34a79e7d0b48 broke Wake-on-LAN by
inadvertently dropping the enabling of DMA receives.

Restore the enabling of DMA receives for WoL.

This is applicable to 3.1+ stable trees.

Reported-by: Tobias Klausmann &lt;klausman@schwarzvogel.de&gt;
Signed-off-by: Dean Nelson &lt;dnelson@redhat.com&gt;
Tested-by: Tobias Klausmann &lt;klausman@schwarzvogel.de&gt;
Tested-by: Aaron Brown &lt;aaron.f.brown@intel.com&gt;
Signed-off-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>bnx2: Fix bug in bnx2_free_tx_skbs().</title>
<updated>2012-08-19T17:15:21Z</updated>
<author>
<name>Michael Chan</name>
<email>mchan@broadcom.com</email>
</author>
<published>2012-07-10T10:04:40Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=6ccc95984ccfb8fa3cac0fee166e6290939587bf'/>
<id>urn:sha1:6ccc95984ccfb8fa3cac0fee166e6290939587bf</id>
<content type='text'>
[ Upstream commit c1f5163de417dab01fa9daaf09a74bbb19303f3c ]

In rare cases, bnx2x_free_tx_skbs() can unmap the wrong DMA address
when it gets to the last entry of the tx ring.  We were not using
the proper macro to skip the last entry when advancing the tx index.

Reported-by: Zongyun Lai &lt;zlai@vmware.com&gt;
Reviewed-by: Jeffrey Huang &lt;huangjw@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: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>r8169: RxConfig hack for the 8168evl.</title>
<updated>2012-08-02T13:37:40Z</updated>
<author>
<name>françois romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2012-06-20T12:09:18Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e67de1a52fb8fdad45a4a99d2bcb0ac41d1a75ab'/>
<id>urn:sha1:e67de1a52fb8fdad45a4a99d2bcb0ac41d1a75ab</id>
<content type='text'>
commit eb2dc35d99028b698cdedba4f5522bc43e576bd2 upstream.

The 8168evl (RTL_GIGA_MAC_VER_34) based Gigabyte GA-990FXA motherboards
are very prone to NETDEV watchdog problems without this change. See
https://bugzilla.kernel.org/show_bug.cgi?id=42899 for instance.

I don't know why it *works*. It's depressingly effective though.

For the record:
- the problem may go along IOMMU (AMD-Vi) errors but it really looks
  like a red herring.
- the patch sets the RX_MULTI_EN bit. If the 8168c doc is any guide,
  the chipset now fetches several Rx descriptors at a time.
- long ago the driver ignored the RX_MULTI_EN bit.
  e542a2269f232d61270ceddd42b73a4348dee2bb changed the RxConfig
  settings. Whatever the problem it's now labeled a regression.
- Realtek's own driver can identify two different 8168evl devices
  (CFG_METHOD_16 and CFG_METHOD_17) where the r8169 driver only
  sees one. It sucks.

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>stmmac: Fix for nfs hang on multiple reboot</title>
<updated>2012-07-25T03:11:45Z</updated>
<author>
<name>Deepak Sikri</name>
<email>deepak.sikri@st.com</email>
</author>
<published>2012-07-08T21:14:45Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b5ff5ad1b9299fccc11c801764fa23ca696161cf'/>
<id>urn:sha1:b5ff5ad1b9299fccc11c801764fa23ca696161cf</id>
<content type='text'>
commit 8e83989106562326bfd6aaf92174fe138efd026b upstream.

It was observed that during multiple reboots nfs hangs. The status of
receive descriptors shows that all the descriptors were in control of
CPU, and none were assigned to DMA.
Also the DMA status register confirmed that the Rx buffer is
unavailable.

This patch adds the fix for the same by adding the memory barriers to
ascertain that the all instructions before enabling the Rx or Tx DMA are
completed which involves the proper setting of the ownership bit in DMA
descriptors.

Signed-off-by: Deepak Sikri &lt;deepak.sikri@st.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>bnx2x: fix panic when TX ring is full</title>
<updated>2012-07-25T03:11:40Z</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2012-06-13T09:45:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=dcf42d8ca45ca2009ead5cfae84c1c0de0a0af72'/>
<id>urn:sha1:dcf42d8ca45ca2009ead5cfae84c1c0de0a0af72</id>
<content type='text'>
commit bc14786a100cc6a81cd060e8031ec481241b418c upstream.

There is a off by one error in the minimal number of BD in
bnx2x_start_xmit() and bnx2x_tx_int() before stopping/resuming tx queue.

A full size GSO packet, with data included in skb-&gt;head really needs
(MAX_SKB_FRAGS + 4) BDs, because of bnx2x_tx_split()

This error triggers if BQL is disabled and heavy TCP transmit traffic
occurs.

bnx2x_tx_split() definitely can be called, remove a wrong comment.

Reported-by: Tomas Hruby &lt;thruby@google.com&gt;
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Cc: Yaniv Rosner &lt;yanivr@broadcom.com&gt;
Cc: Merav Sicron &lt;meravs@broadcom.com&gt;
Cc: Tom Herbert &lt;therbert@google.com&gt;
Cc: Robert Evans &lt;evansr@google.com&gt;
Cc: Willem de Bruijn &lt;willemb@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>bnx2x: fix checksum validation</title>
<updated>2012-07-25T03:11:39Z</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2012-06-12T23:50:04Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=caac50847fd87dcc587181e3af3bd0aebf49964e'/>
<id>urn:sha1:caac50847fd87dcc587181e3af3bd0aebf49964e</id>
<content type='text'>
commit d6cb3e41386f20fb0777d0b59a2def82c65d37f7 upstream.

bnx2x driver incorrectly sets ip_summed to CHECKSUM_UNNECESSARY on
encapsulated segments. TCP stack happily accepts frames with bad
checksums, if they are inside a GRE or IPIP encapsulation.

Our understanding is that if no IP or L4 csum validation was done by the
hardware, we should leave ip_summed as is (CHECKSUM_NONE), since
hardware doesn't provide CHECKSUM_COMPLETE support in its cqe.

Then, if IP/L4 checksumming was done by the hardware, set
CHECKSUM_UNNECESSARY if no error was flagged.

Patch based on findings and analysis from Robert Evans

Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Cc: Yaniv Rosner &lt;yanivr@broadcom.com&gt;
Cc: Merav Sicron &lt;meravs@broadcom.com&gt;
Cc: Tom Herbert &lt;therbert@google.com&gt;
Cc: Robert Evans &lt;evansr@google.com&gt;
Cc: Willem de Bruijn &lt;willemb@google.com&gt;
Acked-by: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
[bwh: Backported to 3.2: adjust context, indentation]
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>r8169: call netif_napi_del at errpaths and at driver unload</title>
<updated>2012-07-25T03:11:38Z</updated>
<author>
<name>Devendra Naga</name>
<email>devendra.aaru@gmail.com</email>
</author>
<published>2012-05-31T01:51:20Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fc6fc50e4d74eb0f4f4c8a07b33d2a797a29082f'/>
<id>urn:sha1:fc6fc50e4d74eb0f4f4c8a07b33d2a797a29082f</id>
<content type='text'>
commit ad1be8d345416a794dea39761a374032aa471a76 upstream.

when register_netdev fails, the init'ed NAPIs by netif_napi_add must be
deleted with netif_napi_del, and also when driver unloads, it should
delete the NAPI before unregistering netdevice using unregister_netdev.

Signed-off-by: Devendra Naga &lt;devendra.aaru@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>e1000e: Correct link check logic for 82571 serdes</title>
<updated>2012-07-25T03:11:23Z</updated>
<author>
<name>Tushar Dave</name>
<email>tushar.n.dave@intel.com</email>
</author>
<published>2012-07-12T08:56:56Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=df4372866de83261b79bf7af24c058649ed0f2eb'/>
<id>urn:sha1:df4372866de83261b79bf7af24c058649ed0f2eb</id>
<content type='text'>
commit d0efa8f23a644f7cb7d1f8e78dd9a223efa412a3 upstream.

SYNCH bit and IV bit of RXCW register are sticky. Before examining these bits,
RXCW should be read twice to filter out one-time false events and have correct
values for these bits. Incorrect values of these bits in link check logic can
cause weird link stability issues if auto-negotiation fails.

Reported-by: Dean Nelson &lt;dnelson@redhat.com&gt;
Signed-off-by: Tushar Dave &lt;tushar.n.dave@intel.com&gt;
Reviewed-by: Bruce Allan &lt;bruce.w.allan@intel.com&gt;
Tested-by: Jeff Pieper &lt;jeffrey.e.pieper@intel.com&gt;
Signed-off-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>atl1c: fix issue of transmit queue 0 timed out</title>
<updated>2012-07-25T03:11:21Z</updated>
<author>
<name>Cloud Ren</name>
<email>cjren@qca.qualcomm.com</email>
</author>
<published>2012-07-03T16:51:48Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e0dc11cd5466e1a433dde19ed0222dc08d9b8338'/>
<id>urn:sha1:e0dc11cd5466e1a433dde19ed0222dc08d9b8338</id>
<content type='text'>
commit b94e52f62683dc0b00c6d1b58b80929a078c0fd5 upstream.

some people report atl1c could cause system hang with following
kernel trace info:
---------------------------------------
WARNING: at.../net/sched/sch_generic.c:258 dev_watchdog+0x1db/0x1d0()
...
NETDEV WATCHDOG: eth0 (atl1c): transmit queue 0 timed out
...
---------------------------------------
This is caused by netif_stop_queue calling when cable Link is down.
So remove netif_stop_queue, because link_watch will take it over.

Signed-off-by: xiong &lt;xiong@qca.qualcomm.com&gt;
Signed-off-by: Cloud Ren &lt;cjren@qca.qualcomm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
</feed>
