<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/net/ethernet/via, branch v3.12.15</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>net,via-rhine: Fix tx_timeout handling</title>
<updated>2014-02-06T19:22:20+00:00</updated>
<author>
<name>Richard Weinberger</name>
<email>richard@nod.at</email>
</author>
<published>2014-01-14T21:46:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e9f138ed4e403136240d0ea3dce7167f14adcdba'/>
<id>e9f138ed4e403136240d0ea3dce7167f14adcdba</id>
<content type='text'>
[ Upstream commit a926592f5e4e900f3fa903298c4619a131e60963 ]

rhine_reset_task() misses to disable the tx scheduler upon reset,
this can lead to a crash if work is still scheduled while we're resetting
the tx queue.

Fixes:
[   93.591707] BUG: unable to handle kernel NULL pointer dereference at 0000004c
[   93.595514] IP: [&lt;c119d10d&gt;] rhine_napipoll+0x491/0x6

Signed-off-by: Richard Weinberger &lt;richard@nod.at&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 a926592f5e4e900f3fa903298c4619a131e60963 ]

rhine_reset_task() misses to disable the tx scheduler upon reset,
this can lead to a crash if work is still scheduled while we're resetting
the tx queue.

Fixes:
[   93.591707] BUG: unable to handle kernel NULL pointer dereference at 0000004c
[   93.595514] IP: [&lt;c119d10d&gt;] rhine_napipoll+0x491/0x6

Signed-off-by: Richard Weinberger &lt;richard@nod.at&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>via-velocity: fix netif_receive_skb use in irq disabled section.</title>
<updated>2013-12-08T15:29:14+00:00</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2013-11-25T23:40:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=df0c053e8ae401eab14447a729060bfa4f8c02ce'/>
<id>df0c053e8ae401eab14447a729060bfa4f8c02ce</id>
<content type='text'>
[ Upstream commit bc9627e7e918a85e906c1a3f6d01d9b8ef911a96 ]

2fdac010bdcf10a30711b6924612dfc40daf19b8 ("via-velocity.c: update napi
implementation") overlooked an irq disabling spinlock when the Rx part
of the NAPI poll handler was converted from netif_rx to netif_receive_skb.

NAPI Rx processing can be taken out of the locked section with a pair of
napi_{disable / enable} since it only races with the MTU change function.

An heavier rework of the NAPI locking would be able to perform NAPI Tx
before Rx where I simply removed one of velocity_tx_srv calls.

References: https://bugzilla.redhat.com/show_bug.cgi?id=1022733
Fixes: 2fdac010bdcf (via-velocity.c: update napi implementation)
Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Tested-by: Alex A. Schmidt &lt;aaschmidt1@gmail.com&gt;
Cc: Jamie Heilman &lt;jamie@audible.transient.net&gt;
Cc: Michele Baldessari &lt;michele@acksyn.org&gt;
Cc: Julia Lawall &lt;Julia.Lawall@lip6.fr&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 bc9627e7e918a85e906c1a3f6d01d9b8ef911a96 ]

2fdac010bdcf10a30711b6924612dfc40daf19b8 ("via-velocity.c: update napi
implementation") overlooked an irq disabling spinlock when the Rx part
of the NAPI poll handler was converted from netif_rx to netif_receive_skb.

NAPI Rx processing can be taken out of the locked section with a pair of
napi_{disable / enable} since it only races with the MTU change function.

An heavier rework of the NAPI locking would be able to perform NAPI Tx
before Rx where I simply removed one of velocity_tx_srv calls.

References: https://bugzilla.redhat.com/show_bug.cgi?id=1022733
Fixes: 2fdac010bdcf (via-velocity.c: update napi implementation)
Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Tested-by: Alex A. Schmidt &lt;aaschmidt1@gmail.com&gt;
Cc: Jamie Heilman &lt;jamie@audible.transient.net&gt;
Cc: Michele Baldessari &lt;michele@acksyn.org&gt;
Cc: Julia Lawall &lt;Julia.Lawall@lip6.fr&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>via-rhine: fix VLAN priority field (PCP, IEEE 802.1p)</title>
<updated>2013-09-26T20:09:00+00:00</updated>
<author>
<name>Roger Luethi</name>
<email>rl@hellgate.ch</email>
</author>
<published>2013-09-21T12:24:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=207070f5221e2a901d56a49df9cde47d9b716cd7'/>
<id>207070f5221e2a901d56a49df9cde47d9b716cd7</id>
<content type='text'>
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;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2013-08-16T22:37:26+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2013-08-16T22:37:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2ff1cf12c9fe70e75e600404e6a4274b19d293ed'/>
<id>2ff1cf12c9fe70e75e600404e6a4274b19d293ed</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/net/ethernet/via/via-velocity.c: update napi implementation</title>
<updated>2013-08-15T08:38:34+00:00</updated>
<author>
<name>Julia Lawall</name>
<email>Julia.Lawall@lip6.fr</email>
</author>
<published>2013-08-14T14:26:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2fdac010bdcf10a30711b6924612dfc40daf19b8'/>
<id>2fdac010bdcf10a30711b6924612dfc40daf19b8</id>
<content type='text'>
Drivers supporting NAPI should use a NAPI-specific function for receiving
packets.  Hence netif_rx is changed to netif_receive_skb.

Furthermore netif_napi_del should be used in the probe and remove function
to clean up the NAPI resource information.

Thanks to Francois Romieu, David Shwatrz and Rami Rosen for their help on
this patch.

Signed-off-by: Julia Lawall &lt;Julia.Lawall@lip6.fr&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>
Drivers supporting NAPI should use a NAPI-specific function for receiving
packets.  Hence netif_rx is changed to netif_receive_skb.

Furthermore netif_napi_del should be used in the probe and remove function
to clean up the NAPI resource information.

Thanks to Francois Romieu, David Shwatrz and Rami Rosen for their help on
this patch.

Signed-off-by: Julia Lawall &lt;Julia.Lawall@lip6.fr&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: via-rhine: Fix incorrect placement of __initdata</title>
<updated>2013-08-09T20:24:26+00:00</updated>
<author>
<name>Sachin Kamat</name>
<email>sachin.kamat@linaro.org</email>
</author>
<published>2013-08-07T10:38:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=77273eaa576fd99315d2830e6826678ec85b5c04'/>
<id>77273eaa576fd99315d2830e6826678ec85b5c04</id>
<content type='text'>
__initdata should be placed between the variable name and equal
sign for the variable to be placed in the intended section.

Signed-off-by: Sachin Kamat &lt;sachin.kamat@linaro.org&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>
__initdata should be placed between the variable name and equal
sign for the variable to be placed in the intended section.

Signed-off-by: Sachin Kamat &lt;sachin.kamat@linaro.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net/velocity: add poll controller function for velocity nic</title>
<updated>2013-07-20T00:34:41+00:00</updated>
<author>
<name>Amit Uttamchandani</name>
<email>auttamchandani@logicube.com</email>
</author>
<published>2013-07-19T00:45:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0887a576a17965732270b2f8d37821fc02ef2feb'/>
<id>0887a576a17965732270b2f8d37821fc02ef2feb</id>
<content type='text'>
Add poll controller function for velocity nic.

Signed-off-by: Amit Uttamchandani &lt;auttamchandani@logicube.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>
Add poll controller function for velocity nic.

Signed-off-by: Amit Uttamchandani &lt;auttamchandani@logicube.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>via-rhine: fix dma mapping errors</title>
<updated>2013-07-12T23:28:02+00:00</updated>
<author>
<name>Neil Horman</name>
<email>nhorman@tuxdriver.com</email>
</author>
<published>2013-07-12T17:35:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9b4fe5fb0bdd8f31f24cbfe77e38ec8155c250c5'/>
<id>9b4fe5fb0bdd8f31f24cbfe77e38ec8155c250c5</id>
<content type='text'>
this bug:
https://bugzilla.redhat.com/show_bug.cgi?id=951695

Reported a dma debug backtrace:

WARNING: at lib/dma-debug.c:937 check_unmap+0x47d/0x930()
Hardware name: To Be Filled By O.E.M.
via-rhine 0000:00:12.0: DMA-API: device driver failed to check map error[device
address=0x0000000075a837b2] [size=90 bytes] [mapped as single]
Modules linked in: ip6_tables gspca_spca561 gspca_main videodev media
snd_hda_codec_realtek snd_hda_intel i2c_viapro snd_hda_codec snd_hwdep snd_seq
ppdev mperf via_rhine coretemp snd_pcm mii microcode snd_page_alloc snd_timer
snd_mpu401 snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore parport_pc
parport shpchp ata_generic pata_acpi radeon i2c_algo_bit drm_kms_helper ttm drm
pata_via sata_via i2c_core uinput
Pid: 295, comm: systemd-journal Not tainted 3.9.0-0.rc6.git2.1.fc20.x86_64 #1
Call Trace:
 &lt;IRQ&gt;  [&lt;ffffffff81068dd0&gt;] warn_slowpath_common+0x70/0xa0
 [&lt;ffffffff81068e4c&gt;] warn_slowpath_fmt+0x4c/0x50
 [&lt;ffffffff8137ec6d&gt;] check_unmap+0x47d/0x930
 [&lt;ffffffff810ace9f&gt;] ? local_clock+0x5f/0x70
 [&lt;ffffffff8137f17f&gt;] debug_dma_unmap_page+0x5f/0x70
 [&lt;ffffffffa0225edc&gt;] ? rhine_ack_events.isra.14+0x3c/0x50 [via_rhine]
 [&lt;ffffffffa02275f8&gt;] rhine_napipoll+0x1d8/0xd80 [via_rhine]
 [&lt;ffffffff815d3d51&gt;] ? net_rx_action+0xa1/0x380
 [&lt;ffffffff815d3e22&gt;] net_rx_action+0x172/0x380
 [&lt;ffffffff8107345f&gt;] __do_softirq+0xff/0x400
 [&lt;ffffffff81073925&gt;] irq_exit+0xb5/0xc0
 [&lt;ffffffff81724cd6&gt;] do_IRQ+0x56/0xc0
 [&lt;ffffffff81719ff2&gt;] common_interrupt+0x72/0x72
 &lt;EOI&gt;  [&lt;ffffffff8170ff57&gt;] ? __slab_alloc+0x4c2/0x526
 [&lt;ffffffff811992e0&gt;] ? mmap_region+0x2b0/0x5a0
 [&lt;ffffffff810d5807&gt;] ? __lock_is_held+0x57/0x80
 [&lt;ffffffff811992e0&gt;] ? mmap_region+0x2b0/0x5a0
 [&lt;ffffffff811bf1bf&gt;] kmem_cache_alloc+0x2df/0x360
 [&lt;ffffffff811992e0&gt;] mmap_region+0x2b0/0x5a0
 [&lt;ffffffff811998e6&gt;] do_mmap_pgoff+0x316/0x3d0
 [&lt;ffffffff81183ca0&gt;] vm_mmap_pgoff+0x90/0xc0
 [&lt;ffffffff81197d6c&gt;] sys_mmap_pgoff+0x4c/0x190
 [&lt;ffffffff81367d7e&gt;] ? trace_hardirqs_on_thunk+0x3a/0x3f
 [&lt;ffffffff8101eb42&gt;] sys_mmap+0x22/0x30
 [&lt;ffffffff81722fd9&gt;] system_call_fastpath+0x16/0x1b

Usual problem with the usual fix, add the appropriate calls to dma_mapping_error
where appropriate

Untested, as I don't have hardware, but its pretty straightforward

Signed-off-by: Neil Horman &lt;nhorman@tuxdriver.com&gt;
CC: David S. Miller &lt;davem@davemloft.net&gt;
CC: Roger Luethi &lt;rl@hellgate.ch&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 bug:
https://bugzilla.redhat.com/show_bug.cgi?id=951695

Reported a dma debug backtrace:

WARNING: at lib/dma-debug.c:937 check_unmap+0x47d/0x930()
Hardware name: To Be Filled By O.E.M.
via-rhine 0000:00:12.0: DMA-API: device driver failed to check map error[device
address=0x0000000075a837b2] [size=90 bytes] [mapped as single]
Modules linked in: ip6_tables gspca_spca561 gspca_main videodev media
snd_hda_codec_realtek snd_hda_intel i2c_viapro snd_hda_codec snd_hwdep snd_seq
ppdev mperf via_rhine coretemp snd_pcm mii microcode snd_page_alloc snd_timer
snd_mpu401 snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore parport_pc
parport shpchp ata_generic pata_acpi radeon i2c_algo_bit drm_kms_helper ttm drm
pata_via sata_via i2c_core uinput
Pid: 295, comm: systemd-journal Not tainted 3.9.0-0.rc6.git2.1.fc20.x86_64 #1
Call Trace:
 &lt;IRQ&gt;  [&lt;ffffffff81068dd0&gt;] warn_slowpath_common+0x70/0xa0
 [&lt;ffffffff81068e4c&gt;] warn_slowpath_fmt+0x4c/0x50
 [&lt;ffffffff8137ec6d&gt;] check_unmap+0x47d/0x930
 [&lt;ffffffff810ace9f&gt;] ? local_clock+0x5f/0x70
 [&lt;ffffffff8137f17f&gt;] debug_dma_unmap_page+0x5f/0x70
 [&lt;ffffffffa0225edc&gt;] ? rhine_ack_events.isra.14+0x3c/0x50 [via_rhine]
 [&lt;ffffffffa02275f8&gt;] rhine_napipoll+0x1d8/0xd80 [via_rhine]
 [&lt;ffffffff815d3d51&gt;] ? net_rx_action+0xa1/0x380
 [&lt;ffffffff815d3e22&gt;] net_rx_action+0x172/0x380
 [&lt;ffffffff8107345f&gt;] __do_softirq+0xff/0x400
 [&lt;ffffffff81073925&gt;] irq_exit+0xb5/0xc0
 [&lt;ffffffff81724cd6&gt;] do_IRQ+0x56/0xc0
 [&lt;ffffffff81719ff2&gt;] common_interrupt+0x72/0x72
 &lt;EOI&gt;  [&lt;ffffffff8170ff57&gt;] ? __slab_alloc+0x4c2/0x526
 [&lt;ffffffff811992e0&gt;] ? mmap_region+0x2b0/0x5a0
 [&lt;ffffffff810d5807&gt;] ? __lock_is_held+0x57/0x80
 [&lt;ffffffff811992e0&gt;] ? mmap_region+0x2b0/0x5a0
 [&lt;ffffffff811bf1bf&gt;] kmem_cache_alloc+0x2df/0x360
 [&lt;ffffffff811992e0&gt;] mmap_region+0x2b0/0x5a0
 [&lt;ffffffff811998e6&gt;] do_mmap_pgoff+0x316/0x3d0
 [&lt;ffffffff81183ca0&gt;] vm_mmap_pgoff+0x90/0xc0
 [&lt;ffffffff81197d6c&gt;] sys_mmap_pgoff+0x4c/0x190
 [&lt;ffffffff81367d7e&gt;] ? trace_hardirqs_on_thunk+0x3a/0x3f
 [&lt;ffffffff8101eb42&gt;] sys_mmap+0x22/0x30
 [&lt;ffffffff81722fd9&gt;] system_call_fastpath+0x16/0x1b

Usual problem with the usual fix, add the appropriate calls to dma_mapping_error
where appropriate

Untested, as I don't have hardware, but its pretty straightforward

Signed-off-by: Neil Horman &lt;nhorman@tuxdriver.com&gt;
CC: David S. Miller &lt;davem@davemloft.net&gt;
CC: Roger Luethi &lt;rl@hellgate.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net/trivial: replace numeric with standard PM state macros</title>
<updated>2013-06-29T05:11:48+00:00</updated>
<author>
<name>Yijing Wang</name>
<email>wangyijing@huawei.com</email>
</author>
<published>2013-06-27T12:53:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1ca01512a2a95aa061c3fc24b7c5d7fad9f606bf'/>
<id>1ca01512a2a95aa061c3fc24b7c5d7fad9f606bf</id>
<content type='text'>
Use standard PM state macros PCI_Dx instead of numeric 0/1/2..

Signed-off-by: Yijing Wang &lt;wangyijing@huawei.com&gt;
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use standard PM state macros PCI_Dx instead of numeric 0/1/2..

Signed-off-by: Yijing Wang &lt;wangyijing@huawei.com&gt;
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Move MII out from under NET_CORE and hide it</title>
<updated>2013-06-20T05:22:56+00:00</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2013-06-18T02:24:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a1606c7dc64d8449676d7e840dd2cd0c4e0a0c57'/>
<id>a1606c7dc64d8449676d7e840dd2cd0c4e0a0c57</id>
<content type='text'>
All drivers that select MII also need to select NET_CORE because MII
depends on it.  This is a bit ridiculous because NET_CORE is just a
menu option that doesn't enable any code by itself.

There is also no need for it to be a visible option, since its users
all select it.

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Acked-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.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>
All drivers that select MII also need to select NET_CORE because MII
depends on it.  This is a bit ridiculous because NET_CORE is just a
menu option that doesn't enable any code by itself.

There is also no need for it to be a visible option, since its users
all select it.

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Acked-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
