Thread (22 messages) flat view 22 messages, 7 authors, 2012-11-25

Re: 8139cp: set ring address before enabling receiver

From: Jeff Garzik <hidden>
Date: 2012-11-21 18:12:09

On 11/21/2012 11:57 AM, David Woodhouse wrote:
On Sat, 2012-06-02 at 23:50 +0000, Linux Kernel Mailing List wrote:
quoted
Gitweb:     http://git.kernel.org/linus/;a=commit;h=b01af4579ec41f48e9b9c774e70bd6474ad210db
Commit:     b01af4579ec41f48e9b9c774e70bd6474ad210db
Parent:     20e2a86485967c385d7c7befc1646e4d1d39362e
Author:     Jason Wang [off-list ref]
AuthorDate: Thu May 31 18:19:39 2012 +0000
Committer:  David S. Miller [off-list ref]
CommitDate: Fri Jun 1 14:22:11 2012 -0400

     8139cp: set ring address before enabling receiver

     Currently, we enable the receiver before setting the ring address which could
     lead the card DMA into unexpected areas. Solving this by set the ring address
     before enabling the receiver.

     btw. I find and test this in qemu as I didn't have a 8139cp card in hand. please
     review it carefully.
What sticks out at me from the commit message?

It was not tested on the famously quirky 8139 hardware at all.

While I have not looked at the 8139C+ data sheet in a while, sometimes 
the hardware _did_ have a strange init order.

As this works in a simulator but fails on real hardware, it seems like 
an obvious regression caused by an untested [on read hardware] patch.

	Jeff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help