projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
4d30b80
)
netdev: octeon_mgmt: Fix race manipulating irq bits.
author
David Daney
<ddaney@caviumnetworks.com>
Wed, 5 May 2010 13:03:10 +0000
(13:03 +0000)
committer
David S. Miller
<davem@davemloft.net>
Thu, 6 May 2010 04:22:34 +0000
(21:22 -0700)
Don't re-read the interrupt status register, clear the exact bits we
will be testing.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/octeon/octeon_mgmt.c
patch
|
blob
|
history
diff --git
a/drivers/net/octeon/octeon_mgmt.c
b/drivers/net/octeon/octeon_mgmt.c
index b975a2fad9530ff8dad979213d36d8e924fb49f0..633fa89c442f6b64623f37ec667ee79a93e03422 100644
(file)
--- a/
drivers/net/octeon/octeon_mgmt.c
+++ b/
drivers/net/octeon/octeon_mgmt.c
@@
-598,8
+598,7
@@
static irqreturn_t octeon_mgmt_interrupt(int cpl, void *dev_id)
mixx_isr.u64 = cvmx_read_csr(CVMX_MIXX_ISR(port));
/* Clear any pending interrupts */
- cvmx_write_csr(CVMX_MIXX_ISR(port),
- cvmx_read_csr(CVMX_MIXX_ISR(port)));
+ cvmx_write_csr(CVMX_MIXX_ISR(port), mixx_isr.u64);
cvmx_read_csr(CVMX_MIXX_ISR(port));
if (mixx_isr.s.irthresh) {