<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/net/ethernet, branch linux-4.6.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>qed: Fix setting/clearing bit in completion bitmap</title>
<updated>2016-08-16T07:33:16+00:00</updated>
<author>
<name>Manish Chopra</name>
<email>manish.chopra@qlogic.com</email>
</author>
<published>2016-07-25T16:07:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=e6ec788ea5bc4195f792b5e4d5d84c15ac7b899d'/>
<id>e6ec788ea5bc4195f792b5e4d5d84c15ac7b899d</id>
<content type='text'>
[ Upstream commit 59d3f1ceb69b54569685d0c34dff16a1e0816b19 ]

Slowpath completion handling is incorrectly changing
SPQ_RING_SIZE bits instead of a single one.

Fixes: 76a9a3642a0b ("qed: fix handling of concurrent ramrods")
Signed-off-by: Manish Chopra &lt;manish.chopra@qlogic.com&gt;
Signed-off-by: Yuval Mintz &lt;Yuval.Mintz@qlogic.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 59d3f1ceb69b54569685d0c34dff16a1e0816b19 ]

Slowpath completion handling is incorrectly changing
SPQ_RING_SIZE bits instead of a single one.

Fixes: 76a9a3642a0b ("qed: fix handling of concurrent ramrods")
Signed-off-by: Manish Chopra &lt;manish.chopra@qlogic.com&gt;
Signed-off-by: Yuval Mintz &lt;Yuval.Mintz@qlogic.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: bgmac: Fix infinite loop in bgmac_dma_tx_add()</title>
<updated>2016-08-16T07:33:16+00:00</updated>
<author>
<name>Florian Fainelli</name>
<email>f.fainelli@gmail.com</email>
</author>
<published>2016-07-15T22:42:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=d50a80bb26099d166e710a4ba074216f06a0011d'/>
<id>d50a80bb26099d166e710a4ba074216f06a0011d</id>
<content type='text'>
[ Upstream commit e86663c475d384ab5f46cb5637e9b7ad08c5c505 ]

Nothing is decrementing the index "i" while we are cleaning up the
fragments we could not successful transmit.

Fixes: 9cde94506eacf ("bgmac: implement scatter/gather support")
Reported-by: coverity (CID 1352048)
Signed-off-by: Florian Fainelli &lt;f.fainelli@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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit e86663c475d384ab5f46cb5637e9b7ad08c5c505 ]

Nothing is decrementing the index "i" while we are cleaning up the
fragments we could not successful transmit.

Fixes: 9cde94506eacf ("bgmac: implement scatter/gather support")
Reported-by: coverity (CID 1352048)
Signed-off-by: Florian Fainelli &lt;f.fainelli@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;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: mvneta: set real interrupt per packet for tx_done</title>
<updated>2016-08-10T10:54:49+00:00</updated>
<author>
<name>Dmitri Epshtein</name>
<email>dima@marvell.com</email>
</author>
<published>2016-07-06T02:18:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=2f4cf2ec9191577c201aaf71cca4ccabb50cdb8e'/>
<id>2f4cf2ec9191577c201aaf71cca4ccabb50cdb8e</id>
<content type='text'>
commit 06708f81528725148473c0869d6af5f809c6824b upstream.

Commit aebea2ba0f74 ("net: mvneta: fix Tx interrupt delay") intended to
set coalescing threshold to a value guaranteeing interrupt generation
per each sent packet, so that buffers can be released with no delay.

In fact setting threshold to '1' was wrong, because it causes interrupt
every two packets. According to the documentation a reason behind it is
following - interrupt occurs once sent buffers counter reaches a value,
which is higher than one specified in MVNETA_TXQ_SIZE_REG(q). This
behavior was confirmed during tests. Also when testing the SoC working
as a NAS device, better performance was observed with int-per-packet,
as it strongly depends on the fact that all transmitted packets are
released immediately.

This commit enables NETA controller work in interrupt per sent packet mode
by setting coalescing threshold to 0.

Signed-off-by: Dmitri Epshtein &lt;dima@marvell.com&gt;
Signed-off-by: Marcin Wojtas &lt;mw@semihalf.com&gt;
Fixes aebea2ba0f74 ("net: mvneta: fix Tx interrupt delay")
Acked-by: Willy Tarreau &lt;w@1wt.eu&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 06708f81528725148473c0869d6af5f809c6824b upstream.

Commit aebea2ba0f74 ("net: mvneta: fix Tx interrupt delay") intended to
set coalescing threshold to a value guaranteeing interrupt generation
per each sent packet, so that buffers can be released with no delay.

In fact setting threshold to '1' was wrong, because it causes interrupt
every two packets. According to the documentation a reason behind it is
following - interrupt occurs once sent buffers counter reaches a value,
which is higher than one specified in MVNETA_TXQ_SIZE_REG(q). This
behavior was confirmed during tests. Also when testing the SoC working
as a NAS device, better performance was observed with int-per-packet,
as it strongly depends on the fact that all transmitted packets are
released immediately.

This commit enables NETA controller work in interrupt per sent packet mode
by setting coalescing threshold to 0.

Signed-off-by: Dmitri Epshtein &lt;dima@marvell.com&gt;
Signed-off-by: Marcin Wojtas &lt;mw@semihalf.com&gt;
Fixes aebea2ba0f74 ("net: mvneta: fix Tx interrupt delay")
Acked-by: Willy Tarreau &lt;w@1wt.eu&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net: nps_enet: Disable interrupts before napi reschedule</title>
<updated>2016-06-24T17:22:01+00:00</updated>
<author>
<name>Elad Kanfi</name>
<email>eladkan@mellanox.com</email>
</author>
<published>2016-05-26T12:00:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=2d83aedee4aac5452f598e13df8982b929ba27bd'/>
<id>2d83aedee4aac5452f598e13df8982b929ba27bd</id>
<content type='text'>
[ Upstream commit 86651650d16a359e4142c6a8b0467c87e48c4c94 ]

Since NAPI works by shutting down event interrupts when theres
work and turning them on when theres none, the net driver must
make sure that interrupts are disabled when it reschedules polling.
By calling napi_reschedule, the driver switches to polling mode,
therefor there should be no interrupt interference.
Any received packets will be handled in nps_enet_poll by polling the HW
indication of received packet until all packets are handled.

Signed-off-by: Elad Kanfi &lt;eladkan@mellanox.com&gt;
Acked-by: Noam Camus &lt;noamca@mellanox.com&gt;
Tested-by: Alexey Brodkin &lt;abrodkin@synopsys.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 86651650d16a359e4142c6a8b0467c87e48c4c94 ]

Since NAPI works by shutting down event interrupts when theres
work and turning them on when theres none, the net driver must
make sure that interrupts are disabled when it reschedules polling.
By calling napi_reschedule, the driver switches to polling mode,
therefor there should be no interrupt interference.
Any received packets will be handled in nps_enet_poll by polling the HW
indication of received packet until all packets are handled.

Signed-off-by: Elad Kanfi &lt;eladkan@mellanox.com&gt;
Acked-by: Noam Camus &lt;noamca@mellanox.com&gt;
Tested-by: Alexey Brodkin &lt;abrodkin@synopsys.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: stmmac: Fix incorrect memcpy source memory</title>
<updated>2016-06-24T17:22:00+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2016-05-25T22:40:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0a626fb88972dfe5ebbf80412faae8fe723fb6c4'/>
<id>0a626fb88972dfe5ebbf80412faae8fe723fb6c4</id>
<content type='text'>
[ Upstream commit 643d60bf575daaba93c1ac0d0e1c4b1d4ded1f75 ]

The memcpy() currently copies mdio_bus_data into new_bus-&gt;irq, which
makes no sense, since the mdio_bus_data structure contains more than
just irqs. The code was likely supposed to copy mdio_bus_data-&gt;irqs
into the new_bus-&gt;irq instead, so fix this.

Fixes: e7f4dc3536a4 ("mdio: Move allocation of interrupts into core")
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Cc: Alexandre Torgue &lt;alexandre.torgue@st.com&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 643d60bf575daaba93c1ac0d0e1c4b1d4ded1f75 ]

The memcpy() currently copies mdio_bus_data into new_bus-&gt;irq, which
makes no sense, since the mdio_bus_data structure contains more than
just irqs. The code was likely supposed to copy mdio_bus_data-&gt;irqs
into the new_bus-&gt;irq instead, so fix this.

Fixes: e7f4dc3536a4 ("mdio: Move allocation of interrupts into core")
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Giuseppe Cavallaro &lt;peppe.cavallaro@st.com&gt;
Cc: Alexandre Torgue &lt;alexandre.torgue@st.com&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: alx: use custom skb allocator</title>
<updated>2016-06-24T17:22:00+00:00</updated>
<author>
<name>Feng Tang</name>
<email>feng.tang@intel.com</email>
</author>
<published>2016-05-25T06:49:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5f47c0caf670843d8edefd17c4381c439a5ff890'/>
<id>5f47c0caf670843d8edefd17c4381c439a5ff890</id>
<content type='text'>
[ Upstream commit 26c5f03b2ae8018418ceb25b2e6a48560e8c2f5b ]

This patch follows Eric Dumazet's commit 7b70176421 for Atheros
atl1c driver to fix one exactly same bug in alx driver, that the
network link will be lost in 1-5 minutes after the device is up.

My laptop Lenovo Y580 with Atheros AR8161 ethernet device hit the
same problem with kernel 4.4, and it will be cured by Jarod Wilson's
commit c406700c for alx driver which get merged in 4.5. But there
are still some alx devices can't function well even with Jarod's
patch, while this patch could make them work fine. More details on
	https://bugzilla.kernel.org/show_bug.cgi?id=70761

The debug shows the issue is very likely to be related with the RX
DMA address, specifically 0x...f80, if RX buffer get 0x...f80 several
times, their will be RX overflow error and device will stop working.

For kernel 4.5.0 with Jarod's patch which works fine with my
AR8161/Lennov Y580, if I made some change to the
	__netdev_alloc_skb
		--&gt; __alloc_page_frag()
to make the allocated buffer can get an address with 0x...f80,
then the same error happens. If I make it to 0x...f40 or 0x....fc0,
everything will be still fine. So I tend to believe that the
0x..f80 address cause the silicon to behave abnormally.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70761
Cc: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Cc: Jarod Wilson &lt;jarod@redhat.com&gt;
Signed-off-by: Feng Tang &lt;feng.tang@intel.com&gt;
Tested-by: Ole Lukoie &lt;olelukoie@mail.ru&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 26c5f03b2ae8018418ceb25b2e6a48560e8c2f5b ]

This patch follows Eric Dumazet's commit 7b70176421 for Atheros
atl1c driver to fix one exactly same bug in alx driver, that the
network link will be lost in 1-5 minutes after the device is up.

My laptop Lenovo Y580 with Atheros AR8161 ethernet device hit the
same problem with kernel 4.4, and it will be cured by Jarod Wilson's
commit c406700c for alx driver which get merged in 4.5. But there
are still some alx devices can't function well even with Jarod's
patch, while this patch could make them work fine. More details on
	https://bugzilla.kernel.org/show_bug.cgi?id=70761

The debug shows the issue is very likely to be related with the RX
DMA address, specifically 0x...f80, if RX buffer get 0x...f80 several
times, their will be RX overflow error and device will stop working.

For kernel 4.5.0 with Jarod's patch which works fine with my
AR8161/Lennov Y580, if I made some change to the
	__netdev_alloc_skb
		--&gt; __alloc_page_frag()
to make the allocated buffer can get an address with 0x...f80,
then the same error happens. If I make it to 0x...f40 or 0x....fc0,
everything will be still fine. So I tend to believe that the
0x..f80 address cause the silicon to behave abnormally.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70761
Cc: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Cc: Jarod Wilson &lt;jarod@redhat.com&gt;
Signed-off-by: Feng Tang &lt;feng.tang@intel.com&gt;
Tested-by: Ole Lukoie &lt;olelukoie@mail.ru&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>sfc: on MC reset, clear PIO buffer linkage in TXQs</title>
<updated>2016-06-24T17:22:00+00:00</updated>
<author>
<name>Edward Cree</name>
<email>ecree@solarflare.com</email>
</author>
<published>2016-05-24T17:53:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=f9f1165bf449960fe20e0995423e769221e80673'/>
<id>f9f1165bf449960fe20e0995423e769221e80673</id>
<content type='text'>
[ Upstream commit c0795bf64cba4d1b796fdc5b74b33772841ed1bb ]

Otherwise, if we fail to allocate new PIO buffers, our TXQs will try to
use the old ones, which aren't there any more.

Fixes: 183233bec810 "sfc: Allocate and link PIO buffers; map them with write-combining"
Signed-off-by: Edward Cree &lt;ecree@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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit c0795bf64cba4d1b796fdc5b74b33772841ed1bb ]

Otherwise, if we fail to allocate new PIO buffers, our TXQs will try to
use the old ones, which aren't there any more.

Fixes: 183233bec810 "sfc: Allocate and link PIO buffers; map them with write-combining"
Signed-off-by: Edward Cree &lt;ecree@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;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: mvneta: Fix lacking spinlock initialization</title>
<updated>2016-06-24T17:22:00+00:00</updated>
<author>
<name>Gregory CLEMENT</name>
<email>gregory.clement@free-electrons.com</email>
</author>
<published>2016-05-24T16:03:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=4360cde0fc41c5e2a5132e34b9c67c91b0b32348'/>
<id>4360cde0fc41c5e2a5132e34b9c67c91b0b32348</id>
<content type='text'>
[ Upstream commit 91c45e38b9478ff507e05f10151d64cd0d1aad7b ]

The spinlock used by the hwbm functions must be initialized by the
network driver. This commit fixes this lack and the following erros when
lockdep is enabled:

INFO: trying to register non-static key.
the code is fine but needs lockdep annotation.
turning off the locking correctness validator.
[&lt;c010ff80&gt;] (unwind_backtrace) from [&lt;c010bd08&gt;] (show_stack+0x10/0x14)
[&lt;c010bd08&gt;] (show_stack) from [&lt;c032913c&gt;] (dump_stack+0xb4/0xe0)
[&lt;c032913c&gt;] (dump_stack) from [&lt;c01670e4&gt;] (__lock_acquire+0x1f58/0x2060)
[&lt;c01670e4&gt;] (__lock_acquire) from [&lt;c0167dec&gt;] (lock_acquire+0xa4/0xd0)
[&lt;c0167dec&gt;] (lock_acquire) from [&lt;c06f6650&gt;] (_raw_spin_lock_irqsave+0x54/0x68)
[&lt;c06f6650&gt;] (_raw_spin_lock_irqsave) from [&lt;c058e830&gt;] (hwbm_pool_add+0x1c/0xdc)
[&lt;c058e830&gt;] (hwbm_pool_add) from [&lt;c043f4e8&gt;] (mvneta_bm_pool_use+0x338/0x490)
[&lt;c043f4e8&gt;] (mvneta_bm_pool_use) from [&lt;c0443198&gt;] (mvneta_probe+0x654/0x1284)
[&lt;c0443198&gt;] (mvneta_probe) from [&lt;c03b894c&gt;] (platform_drv_probe+0x4c/0xb0)
[&lt;c03b894c&gt;] (platform_drv_probe) from [&lt;c03b7158&gt;] (driver_probe_device+0x214/0x2c0)
[&lt;c03b7158&gt;] (driver_probe_device) from [&lt;c03b72c4&gt;] (__driver_attach+0xc0/0xc4)
[&lt;c03b72c4&gt;] (__driver_attach) from [&lt;c03b5440&gt;] (bus_for_each_dev+0x68/0x9c)
[&lt;c03b5440&gt;] (bus_for_each_dev) from [&lt;c03b65b8&gt;] (bus_add_driver+0x1a0/0x218)
[&lt;c03b65b8&gt;] (bus_add_driver) from [&lt;c03b79cc&gt;] (driver_register+0x78/0xf8)
[&lt;c03b79cc&gt;] (driver_register) from [&lt;c01018f4&gt;] (do_one_initcall+0x90/0x1dc)
[&lt;c01018f4&gt;] (do_one_initcall) from [&lt;c0900de4&gt;] (kernel_init_freeable+0x15c/0x1fc)
[&lt;c0900de4&gt;] (kernel_init_freeable) from [&lt;c06eed90&gt;] (kernel_init+0x8/0x114)
[&lt;c06eed90&gt;] (kernel_init) from [&lt;c0107910&gt;] (ret_from_fork+0x14/0x24)

Fixes: baa11ebc0c76 ("net: mvneta: Use the new hwbm framework")
Reported-by: Russell King &lt;rmk+kernel@armlinux.org.uk&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Gregory CLEMENT &lt;gregory.clement@free-electrons.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 91c45e38b9478ff507e05f10151d64cd0d1aad7b ]

The spinlock used by the hwbm functions must be initialized by the
network driver. This commit fixes this lack and the following erros when
lockdep is enabled:

INFO: trying to register non-static key.
the code is fine but needs lockdep annotation.
turning off the locking correctness validator.
[&lt;c010ff80&gt;] (unwind_backtrace) from [&lt;c010bd08&gt;] (show_stack+0x10/0x14)
[&lt;c010bd08&gt;] (show_stack) from [&lt;c032913c&gt;] (dump_stack+0xb4/0xe0)
[&lt;c032913c&gt;] (dump_stack) from [&lt;c01670e4&gt;] (__lock_acquire+0x1f58/0x2060)
[&lt;c01670e4&gt;] (__lock_acquire) from [&lt;c0167dec&gt;] (lock_acquire+0xa4/0xd0)
[&lt;c0167dec&gt;] (lock_acquire) from [&lt;c06f6650&gt;] (_raw_spin_lock_irqsave+0x54/0x68)
[&lt;c06f6650&gt;] (_raw_spin_lock_irqsave) from [&lt;c058e830&gt;] (hwbm_pool_add+0x1c/0xdc)
[&lt;c058e830&gt;] (hwbm_pool_add) from [&lt;c043f4e8&gt;] (mvneta_bm_pool_use+0x338/0x490)
[&lt;c043f4e8&gt;] (mvneta_bm_pool_use) from [&lt;c0443198&gt;] (mvneta_probe+0x654/0x1284)
[&lt;c0443198&gt;] (mvneta_probe) from [&lt;c03b894c&gt;] (platform_drv_probe+0x4c/0xb0)
[&lt;c03b894c&gt;] (platform_drv_probe) from [&lt;c03b7158&gt;] (driver_probe_device+0x214/0x2c0)
[&lt;c03b7158&gt;] (driver_probe_device) from [&lt;c03b72c4&gt;] (__driver_attach+0xc0/0xc4)
[&lt;c03b72c4&gt;] (__driver_attach) from [&lt;c03b5440&gt;] (bus_for_each_dev+0x68/0x9c)
[&lt;c03b5440&gt;] (bus_for_each_dev) from [&lt;c03b65b8&gt;] (bus_add_driver+0x1a0/0x218)
[&lt;c03b65b8&gt;] (bus_add_driver) from [&lt;c03b79cc&gt;] (driver_register+0x78/0xf8)
[&lt;c03b79cc&gt;] (driver_register) from [&lt;c01018f4&gt;] (do_one_initcall+0x90/0x1dc)
[&lt;c01018f4&gt;] (do_one_initcall) from [&lt;c0900de4&gt;] (kernel_init_freeable+0x15c/0x1fc)
[&lt;c0900de4&gt;] (kernel_init_freeable) from [&lt;c06eed90&gt;] (kernel_init+0x8/0x114)
[&lt;c06eed90&gt;] (kernel_init) from [&lt;c0107910&gt;] (ret_from_fork+0x14/0x24)

Fixes: baa11ebc0c76 ("net: mvneta: Use the new hwbm framework")
Reported-by: Russell King &lt;rmk+kernel@armlinux.org.uk&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Gregory CLEMENT &lt;gregory.clement@free-electrons.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>switchdev: pass pointer to fib_info instead of copy</title>
<updated>2016-06-24T17:21:59+00:00</updated>
<author>
<name>Jiri Pirko</name>
<email>jiri@mellanox.com</email>
</author>
<published>2016-05-17T16:58:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=2e1d00bfc3718256f9a97057c7b0dd72036e5c34'/>
<id>2e1d00bfc3718256f9a97057c7b0dd72036e5c34</id>
<content type='text'>
[ Upstream commit da4ed55165d41b1073f9a476f1c18493e9bf8c8e ]

The problem is that fib_info-&gt;nh is [0] so the struct fib_info
allocation size depends on number of nexthops. If we just copy fib_info,
we do not copy the nexthops info and driver accesses memory which is not
ours.

Given the fact that fib4 does not defer operations and therefore it does
not need copy, just pass the pointer down to drivers as it was done
before.

Fixes: 850d0cbc91 ("switchdev: remove pointers from switchdev objects")
Signed-off-by: Jiri Pirko &lt;jiri@mellanox.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit da4ed55165d41b1073f9a476f1c18493e9bf8c8e ]

The problem is that fib_info-&gt;nh is [0] so the struct fib_info
allocation size depends on number of nexthops. If we just copy fib_info,
we do not copy the nexthops info and driver accesses memory which is not
ours.

Given the fact that fib4 does not defer operations and therefore it does
not need copy, just pass the pointer down to drivers as it was done
before.

Fixes: 850d0cbc91 ("switchdev: remove pointers from switchdev objects")
Signed-off-by: Jiri Pirko &lt;jiri@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers: net: xgene: fix register offset</title>
<updated>2016-05-14T01:12:07+00:00</updated>
<author>
<name>Iyappan Subramanian</name>
<email>isubramanian@apm.com</email>
</author>
<published>2016-05-13T23:53:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=e2f2d9a72605666ec772c865dbe89edbab896d27'/>
<id>e2f2d9a72605666ec772c865dbe89edbab896d27</id>
<content type='text'>
This patch fixes SG_RX_DV_GATE_REG_0_ADDR register offset
and ring state field lengths.

Signed-off-by: Iyappan Subramanian &lt;isubramanian@apm.com&gt;
Tested-by: Toan Le &lt;toanle@apm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes SG_RX_DV_GATE_REG_0_ADDR register offset
and ring state field lengths.

Signed-off-by: Iyappan Subramanian &lt;isubramanian@apm.com&gt;
Tested-by: Toan Le &lt;toanle@apm.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
