diff options
author | Micah Gruber <micah.gruber@gmail.com> | 2007-07-23 22:44:56 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-07-30 15:58:54 -0400 |
commit | c196d80f994ef4ffefd5a7c62e3f42bd75d538bc (patch) | |
tree | 324724a86e675d468c625e419aa99fb60d09c155 /drivers | |
parent | 85e27831941e0d907be8e244202a293d74730e12 (diff) |
Fix a potential NULL pointer dereference in mace_interrupt() in drivers/net/pcmcia/nmclan_cs.c
This patch fixes a potential null dereference bug where we dereference
DEV before a null check. This patch simply moves the dereferencing after
the null check.
Signed-off-by: Micah Gruber <micah.gruber@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/pcmcia/nmclan_cs.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/pcmcia/nmclan_cs.c b/drivers/net/pcmcia/nmclan_cs.c index 73da611fd536..997c2d0c83bb 100644 --- a/drivers/net/pcmcia/nmclan_cs.c +++ b/drivers/net/pcmcia/nmclan_cs.c | |||
@@ -996,7 +996,7 @@ static irqreturn_t mace_interrupt(int irq, void *dev_id) | |||
996 | { | 996 | { |
997 | struct net_device *dev = (struct net_device *) dev_id; | 997 | struct net_device *dev = (struct net_device *) dev_id; |
998 | mace_private *lp = netdev_priv(dev); | 998 | mace_private *lp = netdev_priv(dev); |
999 | kio_addr_t ioaddr = dev->base_addr; | 999 | kio_addr_t ioaddr; |
1000 | int status; | 1000 | int status; |
1001 | int IntrCnt = MACE_MAX_IR_ITERATIONS; | 1001 | int IntrCnt = MACE_MAX_IR_ITERATIONS; |
1002 | 1002 | ||
@@ -1006,6 +1006,8 @@ static irqreturn_t mace_interrupt(int irq, void *dev_id) | |||
1006 | return IRQ_NONE; | 1006 | return IRQ_NONE; |
1007 | } | 1007 | } |
1008 | 1008 | ||
1009 | ioaddr = dev->base_addr; | ||
1010 | |||
1009 | if (lp->tx_irq_disabled) { | 1011 | if (lp->tx_irq_disabled) { |
1010 | printk( | 1012 | printk( |
1011 | (lp->tx_irq_disabled? | 1013 | (lp->tx_irq_disabled? |