]> err.no Git - linux-2.6/commit
[TG3]: Refine napi poll loop.
authorMichael Chan <mchan@broadcom.com>
Fri, 12 Oct 2007 08:39:50 +0000 (01:39 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Fri, 12 Oct 2007 09:01:20 +0000 (02:01 -0700)
commit4fd7ab5949edfdf99be0ceef206c9d0b7f186318
treea99042048caea838d5e9af01c7d33307941099cd
parent782e3b3b3804c38d5130c7f21d7ec7bf6709023f
[TG3]: Refine napi poll loop.

Need to read and store sblk->status_tag before checking for more work.
The status tag is later written back to the hardware when enabling
interrupts to acknowledge how much work has been processed.  If the
order is reversed, we can end up acknowledging work we haven't
processed.

When we detect tx error, it is more correct to return the rx
work_done so far instead of 0.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/tg3.c