Merge to Fedora kernel-2.6.7-1.492
[linux-2.6.git] / arch / i386 / kernel / vm86.c
index bd8f958..4b64f6b 100644 (file)
@@ -394,6 +394,7 @@ static inline unsigned long get_vflags(struct kernel_vm86_regs * regs)
 
        if (VEFLAGS & VIF_MASK)
                flags |= IF_MASK;
+       flags |= IOPL_MASK;
        return flags | (VEFLAGS & current->thread.v86mask);
 }
 
@@ -732,8 +733,8 @@ static inline void free_vm86_irq(int irqnumber)
 {
        unsigned long flags;
 
-       free_irq(irqnumber,0);
-       vm86_irqs[irqnumber].tsk = 0;
+       free_irq(irqnumber, NULL);
+       vm86_irqs[irqnumber].tsk = NULL;
 
        spin_lock_irqsave(&irqbits_lock, flags);        
        irqbits &= ~(1 << irqnumber);
@@ -783,7 +784,7 @@ static int do_vm86_irq_handling(int subfunction, int irqnumber)
                        if (!((1 << sig) & ALLOWED_SIGS)) return -EPERM;
                        if (invalid_vm86_irq(irq)) return -EPERM;
                        if (vm86_irqs[irq].tsk) return -EPERM;
-                       ret = request_irq(irq, &irq_handler, 0, VM86_IRQNAME, 0);
+                       ret = request_irq(irq, &irq_handler, 0, VM86_IRQNAME, NULL);
                        if (ret) return ret;
                        vm86_irqs[irq].sig = sig;
                        vm86_irqs[irq].tsk = current;