pcnet32: Remove pointless memory barriers
authorJohn Dykstra <john.dykstra1@gmail.com>
Thu, 30 Apr 2009 00:22:30 +0000 (17:22 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 30 Apr 2009 00:22:30 +0000 (17:22 -0700)
These two memory barriers in performance-critical paths are not needed
on x86.  Even if some other architecture does buffer PCI I/O space
writes, the existing memory-mapped I/O barriers are unlikely to be what
is needed.

Signed-off-by: John Dykstra <john.dykstra1@gmail.com>
Acked-by: Don Fry <pcnet32@verizon.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/pcnet32.c

index e5e8c59..1c35e1d 100644 (file)
@@ -1405,7 +1405,7 @@ static int pcnet32_poll(struct napi_struct *napi, int budget)
 
                /* Set interrupt enable. */
                lp->a.write_csr(ioaddr, CSR0, CSR0_INTEN);
-               mmiowb();
+
                spin_unlock_irqrestore(&lp->lock, flags);
        }
        return work_done;
@@ -2597,7 +2597,7 @@ pcnet32_interrupt(int irq, void *dev_id)
                        val = lp->a.read_csr(ioaddr, CSR3);
                        val |= 0x5f00;
                        lp->a.write_csr(ioaddr, CSR3, val);
-                       mmiowb();
+
                        __napi_schedule(&lp->napi);
                        break;
                }