<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/net, branch v3.0.85</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/net?h=v3.0.85</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/net?h=v3.0.85'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-07-03T18:03:23Z</updated>
<entry>
<title>dlci: validate the net device in dlci_del()</title>
<updated>2013-07-03T18:03:23Z</updated>
<author>
<name>Zefan Li</name>
<email>lizefan@huawei.com</email>
</author>
<published>2013-06-26T07:31:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=806f529730af538c2edbb805589c48cc19ad169b'/>
<id>urn:sha1:806f529730af538c2edbb805589c48cc19ad169b</id>
<content type='text'>
commit 578a1310f2592ba90c5674bca21c1dbd1adf3f0a upstream.

We triggered an oops while running trinity with 3.4 kernel:

BUG: unable to handle kernel paging request at 0000000100000d07
IP: [&lt;ffffffffa0109738&gt;] dlci_ioctl+0xd8/0x2d4 [dlci]
PGD 640c0d067 PUD 0
Oops: 0000 [#1] PREEMPT SMP
CPU 3
...
Pid: 7302, comm: trinity-child3 Not tainted 3.4.24.09+ 40 Huawei Technologies Co., Ltd. Tecal RH2285          /BC11BTSA
RIP: 0010:[&lt;ffffffffa0109738&gt;]  [&lt;ffffffffa0109738&gt;] dlci_ioctl+0xd8/0x2d4 [dlci]
...
Call Trace:
  [&lt;ffffffff8137c5c3&gt;] sock_ioctl+0x153/0x280
  [&lt;ffffffff81195494&gt;] do_vfs_ioctl+0xa4/0x5e0
  [&lt;ffffffff8118354a&gt;] ? fget_light+0x3ea/0x490
  [&lt;ffffffff81195a1f&gt;] sys_ioctl+0x4f/0x80
  [&lt;ffffffff81478b69&gt;] system_call_fastpath+0x16/0x1b
...

It's because the net device is not a dlci device.

Reported-by: Li Jinyue &lt;lijinyue@huawei.com&gt;
Signed-off-by: Li Zefan &lt;lizefan@huawei.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>dlci: acquire rtnl_lock before calling __dev_get_by_name()</title>
<updated>2013-07-03T18:03:23Z</updated>
<author>
<name>Zefan Li</name>
<email>lizefan@huawei.com</email>
</author>
<published>2013-06-26T07:29:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=72ad35befc4715ebb0d715b90f27572ef11a15e2'/>
<id>urn:sha1:72ad35befc4715ebb0d715b90f27572ef11a15e2</id>
<content type='text'>
commit 11eb2645cbf38a08ae491bf6c602eea900ec0bb5 upstream.

Otherwise the net device returned can be freed at anytime.

Signed-off-by: Li Zefan &lt;lizefan@huawei.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: add missing iounmap() on error in gianfar_ptp_probe()</title>
<updated>2013-06-27T17:34:32Z</updated>
<author>
<name>Wei Yongjun</name>
<email>yongjun_wei@trendmicro.com.cn</email>
</author>
<published>2013-05-16T22:25:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cc56da01f9325fd72ebf4d759b8333020bdc5f6c'/>
<id>urn:sha1:cc56da01f9325fd72ebf4d759b8333020bdc5f6c</id>
<content type='text'>
[ Upstream commit e5f5e380e0f3bb11f04ca5bc66a551e58e0ad26e ]

Add the missing iounmap() before return from gianfar_ptp_probe()
in the error handling case.

Signed-off-by: Wei Yongjun &lt;yongjun_wei@trendmicro.com.cn&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>ath9k: Disable PowerSave by default</title>
<updated>2013-06-20T18:28:20Z</updated>
<author>
<name>Sujith Manoharan</name>
<email>c_manoha@qca.qualcomm.com</email>
</author>
<published>2013-06-01T01:38:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=319d630e7f0778c8999f6ef503998a4d99cee5f1'/>
<id>urn:sha1:319d630e7f0778c8999f6ef503998a4d99cee5f1</id>
<content type='text'>
commit 531671cb17af07281e6f28c1425f754346e65c41 upstream.

Almost all the DMA issues which have plagued ath9k (in station mode)
for years are related to PS. Disabling PS usually "fixes" the user's
connection stablility. Reports of DMA problems are still trickling in
and are sitting in the kernel bugzilla. Until the PS code in ath9k is
given a thorough review, disbale it by default. The slight increase
in chip power consumption is a small price to pay for improved link
stability.

Signed-off-by: Sujith Manoharan &lt;c_manoha@qca.qualcomm.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>b43: stop format string leaking into error msgs</title>
<updated>2013-06-20T18:28:20Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2013-05-10T21:48:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=720083f1dc15ac6b6fb85b323d0eae1a151e20ce'/>
<id>urn:sha1:720083f1dc15ac6b6fb85b323d0eae1a151e20ce</id>
<content type='text'>
commit e0e29b683d6784ef59bbc914eac85a04b650e63c upstream.

The module parameter "fwpostfix" is userspace controllable, unfiltered,
and is used to define the firmware filename. b43_do_request_fw() populates
ctx-&gt;errors[] on error, containing the firmware filename. b43err()
parses its arguments as a format string. For systems with b43 hardware,
this could lead to a uid-0 to ring-0 escalation.

CVE-2013-2852

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>r8169: fix vlan tag read ordering.</title>
<updated>2013-05-19T17:04:47Z</updated>
<author>
<name>Francois Romieu</name>
<email>romieu@fr.zoreil.com</email>
</author>
<published>2013-05-09T22:50:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e81164cfec2f578998670c8f00e5d0c33c06f20f'/>
<id>urn:sha1:e81164cfec2f578998670c8f00e5d0c33c06f20f</id>
<content type='text'>
commit ce11ff5e5963e441feb591e76278528f876c332d upstream.

Control of receive descriptor must not be returned to ethernet chipset
before vlan tag processing is done.

VLAN tag receive word is now reset both in normal and error path.

Signed-off-by: Francois Romieu &lt;romieu@fr.zoreil.com&gt;
Spotted-by: Timo Teras &lt;timo.teras@iki.fi&gt;
Cc: Hayes Wang &lt;hayeswang@realtek.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>macvlan: fix passthru mode race between dev removal and rx path</title>
<updated>2013-05-19T17:04:46Z</updated>
<author>
<name>Jiri Pirko</name>
<email>jiri@resnulli.us</email>
</author>
<published>2013-05-09T04:23:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d5bf240fa193989d605a715bda7cb3283b1abc89'/>
<id>urn:sha1:d5bf240fa193989d605a715bda7cb3283b1abc89</id>
<content type='text'>
[ Upstream commit 233c7df0821c4190e2d3f4be0f2ca0ab40a5ed8c, note
  that I had to add list_first_or_null_rcu to rculist.h in order
  to accomodate this fix. ]

Currently, if macvlan in passthru mode is created and data are rxed and
you remove this device, following panic happens:

NULL pointer dereference at 0000000000000198
IP: [&lt;ffffffffa0196058&gt;] macvlan_handle_frame+0x153/0x1f7 [macvlan]

I'm using following script to trigger this:
&lt;script&gt;
while [ 1 ]
do
	ip link add link e1 name macvtap0 type macvtap mode passthru
	ip link set e1 up
	ip link set macvtap0 up
	IFINDEX=`ip link |grep macvtap0 | cut -f 1 -d ':'`
	cat /dev/tap$IFINDEX  &gt;/dev/null &amp;
	ip link del dev macvtap0
done
&lt;/script&gt;

I run this script while "ping -f" is running on another machine to send
packets to e1 rx.

Reason of the panic is that list_first_entry() is blindly called in
macvlan_handle_frame() even if the list was empty. vlan is set to
incorrect pointer which leads to the crash.

I'm fixing this by protecting port-&gt;vlans list by rcu and by preventing
from getting incorrect pointer in case the list is empty.

Introduced by: commit eb06acdc85585f2 "macvlan: Introduce 'passthru' mode to takeover the underlying device"

Signed-off-by: Jiri Pirko &lt;jiri@resnulli.us&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.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>3c59x: fix PCI resource management</title>
<updated>2013-05-19T17:04:45Z</updated>
<author>
<name>Sergei Shtylyov</name>
<email>sshtylyov@ru.mvista.com</email>
</author>
<published>2013-05-09T11:14:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cddd4b732be4dd206b99e25ac652db222d0ec2ba'/>
<id>urn:sha1:cddd4b732be4dd206b99e25ac652db222d0ec2ba</id>
<content type='text'>
[ Upstream commit 4b264a1676e70dc656ba53a8cac690f2d4b65f4e ]

The driver wrongly claimed I/O ports at an address returned by pci_iomap() --
even if it was passed an MMIO address.  Fix this by claiming/releasing all PCI
resources in the PCI driver's probe()/remove() methods instead and get rid of
'must_free_region' flag weirdness (why would Cardbus claim anything for us?).

Signed-off-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.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>3c59x: fix freeing nonexistent resource on driver unload</title>
<updated>2013-05-19T17:04:44Z</updated>
<author>
<name>Sergei Shtylyov</name>
<email>sergei.shtylyov@cogentembedded.com</email>
</author>
<published>2013-05-02T11:10:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=20a7e697adea9e58ce7ad390ba487b995ebcbb1b'/>
<id>urn:sha1:20a7e697adea9e58ce7ad390ba487b995ebcbb1b</id>
<content type='text'>
[ Upstream commit c81400be716aa4c76f6ebf339ba94358dbbf6da6 ]

When unloading the driver that drives an EISA board, a message similar to the
following one is displayed:

Trying to free nonexistent resource &lt;0000000000013000-000000000001301f&gt;

Then an user is unable to reload the driver because the resource it requested in
the previous load hasn't been freed. This happens most probably due to a typo in
vortex_eisa_remove() which calls release_region() with 'dev-&gt;base_addr'  instead
of 'edev-&gt;base_addr'...

Reported-by: Matthew Whitehead &lt;tedheadster@gmail.com&gt;
Tested-by: Matthew Whitehead &lt;tedheadster@gmail.com&gt;
Signed-off-by: Sergei Shtylyov &lt;sergei.shtylyov@cogentembedded.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>3c509.c: call SET_NETDEV_DEV for all device types (ISA/ISAPnP/EISA)</title>
<updated>2013-05-19T17:04:43Z</updated>
<author>
<name>Matthew Whitehead</name>
<email>tedheadster@gmail.com</email>
</author>
<published>2013-04-29T21:46:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=be8fd5041900f0d8233ca61119477b28ca7df6e0'/>
<id>urn:sha1:be8fd5041900f0d8233ca61119477b28ca7df6e0</id>
<content type='text'>
[ Upstream commit 3b54912f9cd167641b91d4a697bd742f70e534fe ]

The venerable 3c509 driver only sets its device parent in one case, the ISAPnP one.
It does this with the SET_NETDEV_DEV function. It should register with the device
hierarchy in two additional cases: standard (non-PnP) ISA and EISA.

- Currently they appear here:
/sys/devices/virtual/net/eth0 (standard ISA)
/sys/devices/virtual/net/eth1 (EISA)

- Rather, they should instead be here:
/sys/devices/isa/3c509.0/net/eth0 (standard ISA)
/sys/devices/pci0000:00/0000:00:07.0/00:04/net/eth1 (EISA)

Tested on ISA and EISA boards.

Signed-off-by: Matthew Whitehead &lt;tedheadster@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>
</feed>
