Index: drivers/net/lasi_82596.c
===================================================================
RCS file: /var/cvs/linux-2.5/drivers/net/lasi_82596.c,v
retrieving revision 1.1.2.3
retrieving revision 1.5
diff -u -p -r1.1.2.3 -r1.5
--- drivers/net//lasi_82596.c	8 Oct 2002 16:53:13 -0000	1.1.2.3
+++ drivers/net//lasi_82596.c	21 Oct 2002 02:54:22 -0000	1.5
@@ -1412,8 +1412,7 @@ static int i596_close(struct net_device 
 	DEB(DEB_INIT,printk("%s: Shutting down ethercard, status was %4.4x.\n",
 		       dev->name, lp->scb.status));
 
-	save_flags(flags);
-	cli();
+	spin_lock_irqsave(&lp->lock, flags);
 
 	wait_cmd(dev,lp,100,"close1 timed out");
 	lp->scb.command = CUC_ABORT | RX_ABORT;
@@ -1422,7 +1421,7 @@ static int i596_close(struct net_device 
 	CA(dev);
 
 	wait_cmd(dev,lp,100,"close2 timed out");
-	restore_flags(flags);
+	spin_unlock_irqrestore(&lp->lock, flags);
 	DEB(DEB_STRUCT,i596_display_data(dev));
 	i596_cleanup_cmd(dev,lp);
 
