tile on-chip network driver: sync up with latest fixes
authorChris Metcalf <cmetcalf@tilera.com>
Tue, 1 Mar 2011 17:49:53 +0000 (12:49 -0500)
committerChris Metcalf <cmetcalf@tilera.com>
Thu, 10 Mar 2011 18:18:12 +0000 (13:18 -0500)
commitd91c641233ae09fcccec75313b7f55992668bf8d
tree1ecc5d498b7cbb35c1c4474bd3c23bf8f411e010
parent76c567fbba50c3da2f4d40e2e551bab26cfd4381
tile on-chip network driver: sync up with latest fixes

Combine the "command" and "completion" locks into a single lock,
on each egress queue, to improve efficiency.

Support the use of 4KB pages in the "egress queue".

Delete the unused "duplicate ACK compression" code.

Filter "bad" (i.e. truncated) packets.

Avoid corrupting "dev->napi_list", by sequentializing modifications.

Deregister for incoming packets during stop, to reduce unexpected
interrupts.  Also, encourage active NAPI loops to complete before
we disable NAPI, which would otherwise crash.

Free any pending completions after shutting down LEPP.

Use a single, permanently registered, IRQ handler, to avoid situations
in which the IRQ handler was firing after being freed, and ignore any
"unexpected" interrupts.

Drop egress packets, instead of spinning, if the hardware cannot keep
up, or is disconnected.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
drivers/net/tile/tilepro.c