hv_netvsc: Fix the order of num_sc_offered decrement
[linux-2.6-block.git] / drivers / scsi / imm.c
index f8b88fa78e6274f8b5956d6ea6a3f057881132f5..9164ce1249c107fd2460d0fd9b83daa6f178584b 100644 (file)
@@ -77,9 +77,10 @@ static void imm_wakeup(void *ref)
 
        spin_lock_irqsave(&arbitration_lock, flags);
        if (dev->wanted) {
-               parport_claim(dev->dev);
-               got_it(dev);
-               dev->wanted = 0;
+               if (parport_claim(dev->dev) == 0) {
+                       got_it(dev);
+                       dev->wanted = 0;
+               }
        }
        spin_unlock_irqrestore(&arbitration_lock, flags);
 }