diff options
author | Linus Torvalds | 2011-09-10 17:28:46 -0700 |
---|---|---|
committer | Linus Torvalds | 2011-09-10 17:28:46 -0700 |
commit | d0a77454c70d0449a5f87087deb8f0cb15145e90 (patch) | |
tree | a6efb34357756faede3fd63f5a72e72977c68321 /drivers | |
parent | c338bfb5ecf6c36b2112479691d69db4c2b5a78a (diff) | |
parent | 6c6d8deb5d95a0675a8edd588bbc2249cbce5b34 (diff) |
Merge branch 'fixes' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm
* 'fixes' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm:
ARM: 7088/1: entry: fix wrong parameter name used in do_thumb_abort
ARM: 7080/1: l2x0: make sure I&D are not locked down on init
ARM: 7081/1: mach-integrator: fix the clocksource
NET: am79c961: fix race in link status code
ARM: 7067/1: mm: keep significant bits in pfn_valid
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/arm/am79c961a.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/arm/am79c961a.c b/drivers/net/arm/am79c961a.c index 52fe21e1e2cd..3b1416e3d217 100644 --- a/drivers/net/arm/am79c961a.c +++ b/drivers/net/arm/am79c961a.c @@ -308,8 +308,11 @@ static void am79c961_timer(unsigned long data) struct net_device *dev = (struct net_device *)data; struct dev_priv *priv = netdev_priv(dev); unsigned int lnkstat, carrier; + unsigned long flags; + spin_lock_irqsave(&priv->chip_lock, flags); lnkstat = read_ireg(dev->base_addr, ISALED0) & ISALED0_LNKST; + spin_unlock_irqrestore(&priv->chip_lock, flags); carrier = netif_carrier_ok(dev); if (lnkstat && !carrier) { |