<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/net, branch v3.3</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/net?h=v3.3</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/net?h=v3.3'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-03-16T09:01:41Z</updated>
<entry>
<title>wimax/i2400m: fix erroneous NETDEV_TX_BUSY use</title>
<updated>2012-03-16T09:01:41Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2012-03-14T09:21:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b8fbaef586176f6abe0eb7887ddae66e99898b79'/>
<id>urn:sha1:b8fbaef586176f6abe0eb7887ddae66e99898b79</id>
<content type='text'>
A driver start_xmit() method cannot free skb and return NETDEV_TX_BUSY,
since caller is going to reuse freed skb.

In fact netif_tx_stop_queue() / netif_stop_queue() is needed before
returning NETDEV_TX_BUSY or you can trigger a ksoftirqd fatal loop.

In case of memory allocation error, only safe way is to drop the packet
and return NETDEV_TX_OK

Also increments tx_dropped counter

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Inaky Perez-Gonzalez &lt;inaky.perez-gonzalez@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net/hyperv: fix erroneous NETDEV_TX_BUSY use</title>
<updated>2012-03-16T09:01:17Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2012-03-14T08:53:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bb6d5e76fb4fba9aa36726db41404512f3286c0f'/>
<id>urn:sha1:bb6d5e76fb4fba9aa36726db41404512f3286c0f</id>
<content type='text'>
A driver start_xmit() method cannot free skb and return NETDEV_TX_BUSY,
since caller is going to reuse freed skb.

This is mostly a revert of commit bf769375c (staging: hv: fix the return
status of netvsc_start_xmit())

In fact netif_tx_stop_queue() / netif_stop_queue() is needed before
returning NETDEV_TX_BUSY or you can trigger a ksoftirqd fatal loop.

In case of memory allocation error, only safe way is to drop the packet
and return NETDEV_TX_OK

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: "K. Y. Srinivasan" &lt;kys@microsoft.com&gt;
Cc: Haiyang Zhang &lt;haiyangz@microsoft.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Reviewed-by: Haiyang Zhang &lt;haiyangz@microsoft.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net/usbnet: reserve headroom on rx skbs</title>
<updated>2012-03-16T09:01:05Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2012-03-14T06:56:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7bdd402706cf26bfef9050dfee3f229b7f33ee4f'/>
<id>urn:sha1:7bdd402706cf26bfef9050dfee3f229b7f33ee4f</id>
<content type='text'>
network drivers should reserve some headroom on incoming skbs so that we
dont need expensive reallocations, eg forwarding packets in tunnels.

This NET_SKB_PAD padding is done in various helpers, like
__netdev_alloc_skb_ip_align() in this patch, combining NET_SKB_PAD and
NET_IP_ALIGN magic.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Oliver Neukum &lt;oneukum@suse.de&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Acked-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bnx2x: fix memory leak in bnx2x_init_firmware()</title>
<updated>2012-03-16T08:57:26Z</updated>
<author>
<name>Michal Schmidt</name>
<email>mschmidt@redhat.com</email>
</author>
<published>2012-03-15T14:08:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c0ea452e422a1fc78ec8c639df64012d0b8dbb4a'/>
<id>urn:sha1:c0ea452e422a1fc78ec8c639df64012d0b8dbb4a</id>
<content type='text'>
When cycling the interface down and up, bnx2x_init_firmware() knows that
the firmware is already loaded, but nevertheless it allocates certain
arrays anew (init_data, init_ops, init_ops_offsets, iro_arr). The old
arrays are leaked.

Fix the leaks by returning early if the firmware was already loaded.
Because if the firmware is loaded, so are the arrays.

Signed-off-by: Michal Schmidt &lt;mschmidt@redhat.com&gt;
Acked-by: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bnx2x: fix a crash on corrupt firmware file</title>
<updated>2012-03-16T08:57:26Z</updated>
<author>
<name>Michal Schmidt</name>
<email>mschmidt@redhat.com</email>
</author>
<published>2012-03-15T14:08:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=127d0a198a310970b31866af8bbb6d4b1068e546'/>
<id>urn:sha1:127d0a198a310970b31866af8bbb6d4b1068e546</id>
<content type='text'>
If the requested firmware is deemed corrupt and then released, reset the
pointer to NULL in order to avoid double-freeing it in
bnx2x_release_firmware() or dereferencing it in bnx2x_init_firmware().

Signed-off-by: Michal Schmidt &lt;mschmidt@redhat.com&gt;
Acked-by: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem</title>
<updated>2012-03-13T18:38:51Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2012-03-13T18:38:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=750084b51bc9a7962e7f7c9a29cede0234aed824'/>
<id>urn:sha1:750084b51bc9a7962e7f7c9a29cede0234aed824</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tun: don't hold network namespace by tun sockets</title>
<updated>2012-03-13T00:14:00Z</updated>
<author>
<name>Stanislav Kinsbursky</name>
<email>skinsbursky@parallels.com</email>
</author>
<published>2012-03-12T02:59:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1ab5ecb90cb6a3df1476e052f76a6e8f6511cb3d'/>
<id>urn:sha1:1ab5ecb90cb6a3df1476e052f76a6e8f6511cb3d</id>
<content type='text'>
v3: added previously removed sock_put() to the tun_release() callback, because
sk_release_kernel() doesn't drop the socket reference.

v2: sk_release_kernel() used for socket release. Dummy tun_release() is
required for sk_release_kernel() ---&gt; sock_release() ---&gt; sock-&gt;ops-&gt;release()
call.

TUN was designed to destroy it's socket on network namesapce shutdown. But this
will never happen for persistent device, because it's socket holds network
namespace.
This patch removes of holding network namespace by TUN socket and replaces it
by creating socket in init_net and then changing it's net it to desired one. On
shutdown socket is moved back to init_net prior to final put.

Signed-off-by: Stanislav Kinsbursky &lt;skinsbursky@parallels.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bnx2x: FCoE statistics id fixed</title>
<updated>2012-03-13T00:01:25Z</updated>
<author>
<name>Yuval Mintz</name>
<email>yuvalmin@broadcom.com</email>
</author>
<published>2012-03-12T11:22:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=de5c37414af10ac9305d4a3e9c1468347ca3ccaa'/>
<id>urn:sha1:de5c37414af10ac9305d4a3e9c1468347ca3ccaa</id>
<content type='text'>
FCoE statistics ids were distinguished from the L2's statistics ids.
However, not all of the change was committed. This causes a possible
collision of indices when FCoE is present.

This patch fixes the issue.

Signed-off-by: Yuval Mintz &lt;yuvalmin@broadcom.com&gt;
Signed-off-by: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bnx2x: dcb bit indices flags used as bits</title>
<updated>2012-03-13T00:01:25Z</updated>
<author>
<name>Yuval Mintz</name>
<email>yuvalmin@broadcom.com</email>
</author>
<published>2012-03-12T11:22:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e695a2dda1775dafc88174d2c0d71fab18db105a'/>
<id>urn:sha1:e695a2dda1775dafc88174d2c0d71fab18db105a</id>
<content type='text'>
DCB flags were updated using the flags' bit offsets instead of
the actual bits. This is now fixed.

Signed-off-by: Yuval Mintz &lt;yuvalmin@broadcom.com&gt;
Signed-off-by: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bnx2x: added cpu_to_le16 when preparing ramrod's data</title>
<updated>2012-03-13T00:01:25Z</updated>
<author>
<name>Ariel Elior</name>
<email>ariele@broadcom.com</email>
</author>
<published>2012-03-12T11:22:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ab4a71392eb8a91061c63af1d506f5d4580073cf'/>
<id>urn:sha1:ab4a71392eb8a91061c63af1d506f5d4580073cf</id>
<content type='text'>
Fixed endianess issue when passing arguments to FW.

Signed-off-by: Ariel Elior &lt;ariele@broadcom.com&gt;
Signed-off-by: Yuval Mintz &lt;yuvalmin@broadcom.com&gt;
Signed-off-by: Eilon Greenstein &lt;eilong@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
