[PATCH]Re: spin_locks without smp.

From: Maciej Soltysiak (solt@dns.toxicfilms.tv)
Date: Fri Jan 10 2003 - 07:09:53 EST


> On Fri, Jan 10, 2003 at 03:45:46AM -0800, William Lee Irwin III wrote:
> > Buggy on preempt. Remove the #ifdef
Yes sir. :)

Is that okay?

Maciej

--- linux/drivers/net/eexpress.c 2002-11-29 00:53:13.000000000 +0100
+++ linux.new/drivers/net/eexpress.c 2003-01-10 13:08:24.000000000 +0100
@@ -600,9 +600,7 @@
 static void eexp_timeout(struct net_device *dev)
 {
         struct net_local *lp = (struct net_local *)dev->priv;
-#ifdef CONFIG_SMP
         unsigned long flags;
-#endif
         int status;

         disable_irq(dev->irq);
@@ -612,9 +610,7 @@
          * lets make it work first..
          */

-#ifdef CONFIG_SMP
         spin_lock_irqsave(&lp->lock, flags);
-#endif

         status = scb_status(dev);
         unstick_cu(dev);
@@ -628,9 +624,7 @@
                 outb(0,dev->base_addr+SIGNAL_CA);
         }
         netif_wake_queue(dev);
-#ifdef CONFIG_SMP
         spin_unlock_irqrestore(&lp->lock, flags);
-#endif
 }

 /*
@@ -640,9 +634,7 @@
 static int eexp_xmit(struct sk_buff *buf, struct net_device *dev)
 {
         struct net_local *lp = (struct net_local *)dev->priv;
-#ifdef CONFIG_SMP
         unsigned long flags;
-#endif

 #if NET_DEBUG > 6
         printk(KERN_DEBUG "%s: eexp_xmit()\n", dev->name);
@@ -655,9 +647,7 @@
          * lets make it work first..
          */

-#ifdef CONFIG_SMP
         spin_lock_irqsave(&lp->lock, flags);
-#endif

         {
                 unsigned short length = (ETH_ZLEN < buf->len) ? buf->len :
@@ -669,9 +659,7 @@
                 eexp_hw_tx_pio(dev,data,length);
         }
         dev_kfree_skb(buf);
-#ifdef CONFIG_SMP
         spin_unlock_irqrestore(&lp->lock, flags);
-#endif
         enable_irq(dev->irq);
         return 0;
 }


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Jan 15 2003 - 22:00:32 EST