<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/net/ethernet, branch v3.4.71</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/net/ethernet?h=v3.4.71</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/net/ethernet?h=v3.4.71'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-11-29T18:50:32Z</updated>
<entry>
<title>8139cp: re-enable interrupts after tx timeout</title>
<updated>2013-11-29T18:50:32Z</updated>
<author>
<name>David Woodhouse</name>
<email>dwmw2@infradead.org</email>
</author>
<published>2012-11-24T12:11:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d05ee9e14f71acbc101358ac0659b67794ca644f'/>
<id>urn:sha1:d05ee9e14f71acbc101358ac0659b67794ca644f</id>
<content type='text'>
commit 01ffc0a7f1c1801a2354719dedbc32aff45b987d upstream.

Recovery doesn't work too well if we leave interrupts disabled...

Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Acked-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Luis Henriques &lt;luis.henriques@canonical.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>davinci_emac.c: Fix IFF_ALLMULTI setup</title>
<updated>2013-11-04T12:23:41Z</updated>
<author>
<name>Mariusz Ceier</name>
<email>mceier+kernel@gmail.com</email>
</author>
<published>2013-10-21T17:45:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6fdea2fb23fe0a64af442f397b4e717e98e6aba8'/>
<id>urn:sha1:6fdea2fb23fe0a64af442f397b4e717e98e6aba8</id>
<content type='text'>
[ Upstream commit d69e0f7ea95fef8059251325a79c004bac01f018 ]

When IFF_ALLMULTI flag is set on interface and IFF_PROMISC isn't,
emac_dev_mcast_set should only enable RX of multicasts and reset
MACHASH registers.

It does this, but afterwards it either sets up multicast MACs
filtering or disables RX of multicasts and resets MACHASH registers
again, rendering IFF_ALLMULTI flag useless.

This patch fixes emac_dev_mcast_set, so that multicast MACs filtering and
disabling of RX of multicasts are skipped when IFF_ALLMULTI flag is set.

Tested with kernel 2.6.37.

Signed-off-by: Mariusz Ceier &lt;mceier+kernel@gmail.com&gt;
Acked-by: Mugunthan V N &lt;mugunthanvnm@ti.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>bnx2x: record rx queue for LRO packets</title>
<updated>2013-11-04T12:23:41Z</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2013-10-12T21:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=225be57bbaf2c104f339b1a21efc25ff6b6bd9cb'/>
<id>urn:sha1:225be57bbaf2c104f339b1a21efc25ff6b6bd9cb</id>
<content type='text'>
[ Upstream commit 60e66fee56b2256dcb1dc2ea1b2ddcb6e273857d ]

RPS support is kind of broken on bnx2x, because only non LRO packets
get proper rx queue information. This triggers reorders, as it seems
bnx2x like to generate a non LRO packet for segment including TCP PUSH
flag : (this might be pure coincidence, but all the reorders I've
seen involve segments with a PUSH)

11:13:34.335847 IP A &gt; B: . 415808:447136(31328) ack 1 win 457 &lt;nop,nop,timestamp 3789336 3985797&gt;
11:13:34.335992 IP A &gt; B: . 447136:448560(1424) ack 1 win 457 &lt;nop,nop,timestamp 3789336 3985797&gt;
11:13:34.336391 IP A &gt; B: . 448560:479888(31328) ack 1 win 457 &lt;nop,nop,timestamp 3789337 3985797&gt;
11:13:34.336425 IP A &gt; B: P 511216:512640(1424) ack 1 win 457 &lt;nop,nop,timestamp 3789337 3985798&gt;
11:13:34.336423 IP A &gt; B: . 479888:511216(31328) ack 1 win 457 &lt;nop,nop,timestamp 3789337 3985798&gt;
11:13:34.336924 IP A &gt; B: . 512640:543968(31328) ack 1 win 457 &lt;nop,nop,timestamp 3789337 3985798&gt;
11:13:34.336963 IP A &gt; B: . 543968:575296(31328) ack 1 win 457 &lt;nop,nop,timestamp 3789337 3985798&gt;

We must call skb_record_rx_queue() to properly give to RPS (and more
generally for TX queue selection on forward path) the receive queue
information.

Similar fix is needed for skb_mark_napi_id(), but will be handled
in a separate patch to ease stable backports.

Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Willem de Bruijn &lt;willemb@google.com&gt;
Cc: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Acked-by: Dmitry Kravkov &lt;dmitry@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>net: mv643xx_eth: fix orphaned statistics timer crash</title>
<updated>2013-11-04T12:23:40Z</updated>
<author>
<name>Sebastian Hesselbarth</name>
<email>sebastian.hesselbarth@gmail.com</email>
</author>
<published>2013-10-02T10:57:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7ee57de6eb2cb7196d502028c72a247cec591e8a'/>
<id>urn:sha1:7ee57de6eb2cb7196d502028c72a247cec591e8a</id>
<content type='text'>
[ Upstream commit f564412c935111c583b787bcc18157377b208e2e ]

The periodic statistics timer gets started at port _probe() time, but
is stopped on _stop() only. In a modular environment, this can cause
the timer to access already deallocated memory, if the module is unloaded
without starting the eth device. To fix this, we add the timer right
before the port is started, instead of at _probe() time.

Signed-off-by: Sebastian Hesselbarth &lt;sebastian.hesselbarth@gmail.com&gt;
Acked-by: Jason Cooper &lt;jason@lakedaemon.net&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: mv643xx_eth: update statistics timer from timer context only</title>
<updated>2013-11-04T12:23:40Z</updated>
<author>
<name>Sebastian Hesselbarth</name>
<email>sebastian.hesselbarth@gmail.com</email>
</author>
<published>2013-10-02T10:57:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=75120c139e01f967659134c895f8915eff96fc66'/>
<id>urn:sha1:75120c139e01f967659134c895f8915eff96fc66</id>
<content type='text'>
[ Upstream commit 041b4ddb84989f06ff1df0ca869b950f1ee3cb1c ]

Each port driver installs a periodic timer to update port statistics
by calling mib_counters_update. As mib_counters_update is also called
from non-timer context, we should not reschedule the timer there but
rather move it to timer-only context.

Signed-off-by: Sebastian Hesselbarth &lt;sebastian.hesselbarth@gmail.com&gt;
Acked-by: Jason Cooper &lt;jason@lakedaemon.net&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>ll_temac: Reset dma descriptors indexes on ndo_open</title>
<updated>2013-10-13T22:42:48Z</updated>
<author>
<name>Ricardo Ribalda</name>
<email>ricardo.ribalda@gmail.com</email>
</author>
<published>2013-10-01T06:17:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5b94af72dfa3c584463d8641c07130beb6763ce7'/>
<id>urn:sha1:5b94af72dfa3c584463d8641c07130beb6763ce7</id>
<content type='text'>
[ Upstream commit 7167cf0e8cd10287b7912b9ffcccd9616f382922 ]

The dma descriptors indexes are only initialized on the probe function.

If a packet is on the buffer when temac_stop is called, the dma
descriptors indexes can be left on a incorrect state where no other
package can be sent.

So an interface could be left in an usable state after ifdow/ifup.

This patch makes sure that the descriptors indexes are in a proper
status when the device is open.

Signed-off-by: Ricardo Ribalda Delgado &lt;ricardo.ribalda@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>via-rhine: fix VLAN priority field (PCP, IEEE 802.1p)</title>
<updated>2013-10-13T22:42:48Z</updated>
<author>
<name>Roger Luethi</name>
<email>rl@hellgate.ch</email>
</author>
<published>2013-09-21T12:24:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=48ae8a45e24292fe3f6da9975314ca34ae334e02'/>
<id>urn:sha1:48ae8a45e24292fe3f6da9975314ca34ae334e02</id>
<content type='text'>
[ Upstream commit 207070f5221e2a901d56a49df9cde47d9b716cd7 ]

Outgoing packets sent by via-rhine have their VLAN PCP field off by one
(when hardware acceleration is enabled). The TX descriptor expects only VID
and PCP (without a CFI/DEI bit).

Peter Boström noticed and reported the bug.

Signed-off-by: Roger Luethi &lt;rl@hellgate.ch&gt;
Cc: Peter Boström &lt;peter.bostrom@netrounds.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>gianfar: Change default HW Tx queue scheduling mode</title>
<updated>2013-10-13T22:42:47Z</updated>
<author>
<name>Claudiu Manoil</name>
<email>claudiu.manoil@freescale.com</email>
</author>
<published>2012-09-23T22:39:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d45a3625d35eddca15327e99cd72eb5ed2c3ef31'/>
<id>urn:sha1:d45a3625d35eddca15327e99cd72eb5ed2c3ef31</id>
<content type='text'>
commit b98b8babd6e3370fadb7c6eaacb00eb2f6344a6c upstream.

This is primarily to address transmission timeout occurrences, when
multiple H/W Tx queues are being used concurrently. Because in
the priority scheduling mode the controller does not service the
Tx queues equally (but in ascending index order), Tx timeouts are
being triggered rightaway for a basic test with multiple simultaneous
connections like:
iperf -c &lt;server_ip&gt; -n 100M -P 8

resulting in kernel trace:
NETDEV WATCHDOG: eth1 (fsl-gianfar): transmit queue &lt;X&gt; timed out
------------[ cut here ]------------
WARNING: at net/sched/sch_generic.c:255
...
and controller reset during intense traffic, and possibly further
complications.

This patch changes the default H/W Tx scheduling setting (TXSCHED)
for multi-queue devices, from priority scheduling mode to a weighted
round robin mode with equal weights for all H/W Tx queues, and
addresses the issue above.

Signed-off-by: Claudiu Manoil &lt;claudiu.manoil@freescale.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>sfc: Fix efx_rx_buf_offset() for recycled pages</title>
<updated>2013-10-01T16:10:52Z</updated>
<author>
<name>Ben Hutchings</name>
<email>bhutchings@solarflare.com</email>
</author>
<published>2013-09-06T21:39:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=43cbf1f46f0cdc56db7a424c6dda57bd9288376e'/>
<id>urn:sha1:43cbf1f46f0cdc56db7a424c6dda57bd9288376e</id>
<content type='text'>
This bug fix is only for stable branches older than 3.10.  The bug was
fixed upstream by commit 2768935a4660 ('sfc: reuse pages to avoid DMA
mapping/unmapping costs'), but that change is totally unsuitable for
stable.

Commit b590ace09d51 ('sfc: Fix efx_rx_buf_offset() in the presence of
swiotlb') added an explicit page_offset member to struct
efx_rx_buffer, which must be set consistently with the u.page and
dma_addr fields.  However, it failed to add the necessary assignment
in efx_resurrect_rx_buffer().  It also did not correct the calculation
of efx_rx_buffer::dma_addr in efx_resurrect_rx_buffer(), which assumes
that DMA-mapping a page will result in a page-aligned DMA address
(exactly what swiotlb violates).

Add the assignment of efx_rx_buffer::page_offset and change the
calculation of dma_addr to make use of it.

Signed-off-by: Ben Hutchings &lt;bhutchings@solarflare.com&gt;
Acked-by: David Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>8139cp: Fix skb leak in rx_status_loop failure path.</title>
<updated>2013-09-14T13:02:09Z</updated>
<author>
<name>Dave Jones</name>
<email>davej@redhat.com</email>
</author>
<published>2013-08-09T18:16:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=abdf975d2095b3f41939ec0e2259af5d485f2889'/>
<id>urn:sha1:abdf975d2095b3f41939ec0e2259af5d485f2889</id>
<content type='text'>
[ Upstream commit d06f5187469eee1b2932c02fd093d113cfc60d5e ]

Introduced in cf3c4c03060b688cbc389ebc5065ebcce5653e96
("8139cp: Add dma_mapping_error checking")

Signed-off-by: Dave Jones &lt;davej@redhat.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>
