<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux-stable.git/drivers/net/b44.c, branch linux-2.6.32.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/atom?h=linux-2.6.32.y</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/atom?h=linux-2.6.32.y'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/'/>
<updated>2010-10-29T04:44:13+00:00</updated>
<entry>
<title>b44: fix carrier detection on bind</title>
<updated>2010-10-29T04:44:13+00:00</updated>
<author>
<name>Paul Fertser</name>
<email>fercerpav@gmail.com</email>
</author>
<published>2010-10-11T22:45:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=c1faa695d62e888529be9a0ef02bf22093400d74'/>
<id>urn:sha1:c1faa695d62e888529be9a0ef02bf22093400d74</id>
<content type='text'>
commit bcf64aa379fcadd074449cbf0c049da70071b06f upstream.

For carrier detection to work properly when binding the driver with a cable
unplugged, netif_carrier_off() should be called after register_netdev(),
not before.

Signed-off-by: Paul Fertser &lt;fercerpav@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>b44 WOL setup: one-bit-off stack corruption kernel panic fix</title>
<updated>2009-12-18T22:05:08+00:00</updated>
<author>
<name>Stanislav Brabec</name>
<email>sbrabec@suse.cz</email>
</author>
<published>2009-12-09T05:00:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=599343ebd4b057e35955915d73410ea0b987875a'/>
<id>urn:sha1:599343ebd4b057e35955915d73410ea0b987875a</id>
<content type='text'>
[ Upstream commit: e0188829cb724e7d12a2d4e343b368ff1d6e1471 ]

About 50% of shutdowns of b44 Ethernet adapter ends by kernel panic
with kernels compiled with stack-protector.

Checking b44_magic_pattern() return values, one call of
b44_magic_pattern() returns 127. It means, that set_bit(128, pmask)
was called on line 1509. It means that bit 0 of 17th byte of pmask was
overwritten. But pmask has only 16 bytes. Stack corruption happens.

It seems that set_bit() on line 1509 always writes one bit off.

The fix does not only solve the stack corruption, but also makes Wake
On LAN working on my onboard B44 on Asus A7V-333X mainboard.

It seems that this problem affects all kernel versions since commit
725ad800 ([PATCH] b44: add wol for old nic) on 2006-06-20.

Signed-off-by: Stanislav Brabec &lt;sbrabec@suse.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>b44: Fix wedge when using netconsole.</title>
<updated>2009-11-30T08:13:28+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2009-11-30T08:13:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=0cae200eec6330cd2c20b24279597be1da50dc93'/>
<id>urn:sha1:0cae200eec6330cd2c20b24279597be1da50dc93</id>
<content type='text'>
Fixes kernel bugzilla #14691

Due to the way netpoll works, it is perfectly legal to see
NAPI already scheduled when new device events are pending
in b44_interrupt().

So logging a message about it is wrong and in fact harmful.

Based upon a patch by Andreas Mohr.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>b44: the poll handler b44_poll must not enable IRQ unconditionally</title>
<updated>2009-09-17T03:49:47+00:00</updated>
<author>
<name>Dongdong Deng</name>
<email>dongdong.deng@windriver.com</email>
</author>
<published>2009-09-16T16:10:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=e99b1f04d922f132ffab8310b470bcc93d3ddf80'/>
<id>urn:sha1:e99b1f04d922f132ffab8310b470bcc93d3ddf80</id>
<content type='text'>
net/core/netpoll.c::netpoll_send_skb() calls the poll handler when
it is available. As netconsole can be used from almost any context,
IRQ must not be enabled blindly in the NAPI handler of the driver
which supports netpoll.

Call trace:
netpoll_send_skb()
{
local_irq_save(flags)
  -&gt; netpoll_poll()
    -&gt; poll_napi()
      -&gt; poll_one_napi()
        -&gt; napi-&gt;poll()
            -&gt; b44_poll()
local_irq_restore(flags)
}

Signed-off-by: Dongdong Deng &lt;dongdong.deng@windriver.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>b44/b43/b43legacy: Fix switch warnings introduced by SSB-SDIO</title>
<updated>2009-09-09T15:19:03+00:00</updated>
<author>
<name>Michael Buesch</name>
<email>mb@bu3sch.de</email>
</author>
<published>2009-09-08T17:33:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=98a1e2a9260d30ad691fbd1ed778a05e38fe655b'/>
<id>urn:sha1:98a1e2a9260d30ad691fbd1ed778a05e38fe655b</id>
<content type='text'>
This fixes some gcc warnings for switch statements.

Signed-off-by: Michael Buesch &lt;mb@bu3sch.de&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2009-09-02T07:32:56+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2009-09-02T07:32:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=6cdee2f96a97f6da26bd3759c3f8823332fbb438'/>
<id>urn:sha1:6cdee2f96a97f6da26bd3759c3f8823332fbb438</id>
<content type='text'>
Conflicts:
	drivers/net/yellowfin.c
</content>
</entry>
<entry>
<title>netdev: convert bulk of drivers to netdev_tx_t</title>
<updated>2009-09-01T08:14:07+00:00</updated>
<author>
<name>Stephen Hemminger</name>
<email>shemminger@vyatta.com</email>
</author>
<published>2009-08-31T19:50:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=61357325f377889a1daffa14962d705dc814dd0e'/>
<id>urn:sha1:61357325f377889a1daffa14962d705dc814dd0e</id>
<content type='text'>
In a couple of cases collapse some extra code like:
   int retval = NETDEV_TX_OK;
   ...
   return retval;
into
   return NETDEV_TX_OK;

Signed-off-by: Stephen Hemminger &lt;shemminger@vyatta.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>drivers/net: fixed drivers that support netpoll use ndo_start_xmit()</title>
<updated>2009-08-14T23:41:16+00:00</updated>
<author>
<name>Dongdong Deng</name>
<email>dongdong.deng@windriver.com</email>
</author>
<published>2009-08-13T19:12:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=22580f894ac190c46beebb5c3172e450a2318f79'/>
<id>urn:sha1:22580f894ac190c46beebb5c3172e450a2318f79</id>
<content type='text'>
The NETPOLL API requires that interrupts remain disabled in
netpoll_send_skb(). The use of spin_lock_irq() and spin_unlock_irq()
in the NETPOLL API callbacks causes the interrupts to get enabled and
can lead to kernel instability.

The solution is to use spin_lock_irqsave() and spin_unlock_restore()
to prevent the irqs from getting enabled while in netpoll_send_skb().

Call trace:
netpoll_send_skb()
{
   -&gt; local_irq_save(flags)
     ---&gt; dev-&gt;ndo_start_xmit(skb, dev)
         ---&gt; spin_lock_irq()
         ---&gt; spin_unlock_irq() *******here would enable the interrupt.
              ...
   -&gt; local_irq_restore(flags)
}

Signed-off-by: Dongdong Deng &lt;dongdong.deng@windriver.com&gt;
Signed-off-by: Jason Wessel &lt;jason.wessel@windriver.com&gt;
Acked-by: Bruce Ashfield &lt;bruce.ashfield@windriver.com&gt;
Acked-by: Matt Mackall &lt;mpm@selenic.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>drivers/net: Use DIV_ROUND_CLOSEST</title>
<updated>2009-08-02T19:54:18+00:00</updated>
<author>
<name>Julia Lawall</name>
<email>julia@diku.dk</email>
</author>
<published>2009-08-01T09:51:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=39506a552b4b302540e1f9c6c93a122df353e57d'/>
<id>urn:sha1:39506a552b4b302540e1f9c6c93a122df353e57d</id>
<content type='text'>
The kernel.h macro DIV_ROUND_CLOSEST performs the computation (x + d/2)/d
but is perhaps more readable.

The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// &lt;smpl&gt;
@haskernel@
@@

#include &lt;linux/kernel.h&gt;

@depends on haskernel@
expression x,__divisor;
@@

- (((x) + ((__divisor) / 2)) / (__divisor))
+ DIV_ROUND_CLOSEST(x,__divisor)
// &lt;/smpl&gt;

Signed-off-by: Julia Lawall &lt;julia@diku.dk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>b44: strncpy does not null terminate string</title>
<updated>2009-07-20T15:02:58+00:00</updated>
<author>
<name>roel kluin</name>
<email>roel.kluin@gmail.com</email>
</author>
<published>2009-07-17T08:01:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=27e0955184a70c4bd4542ee2da18c749b4f43345'/>
<id>urn:sha1:27e0955184a70c4bd4542ee2da18c749b4f43345</id>
<content type='text'>
strlcpy() will always null terminate the string. Also use the
sizeof(version) to strlcopy() the version string.

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
