UNMATCHED SPL() CALL IN VM SYSTEM
authorBruce Evans <bde@runx.oz.au>
Fri, 22 Jan 1993 00:00:00 +0000 (00:00 +0000)
committerBruce Evans <bde@runx.oz.au>
Fri, 22 Jan 1993 00:00:00 +0000 (00:00 +0000)
I found an splbio() without a matching splx().  Even the
indentation suggests bugs!

AUTHOR: Bruce Evans (bde@runx.oz.au)
386BSD-Patchkit: patch00075

usr/src/sys.386bsd/vm/swap_pager.c

index 4553daa..3b59078 100644 (file)
  *
  * from: Utah $Hdr: swap_pager.c 1.4 91/04/30$
  *
  *
  * from: Utah $Hdr: swap_pager.c 1.4 91/04/30$
  *
+ *
+ * PATCHES MAGIC                LEVEL   PATCH THAT GOT US HERE
+ * --------------------         -----   ----------------------
+ * CURRENT PATCH LEVEL:         1       00075
+ * --------------------         -----   ----------------------
+ *
+ * 22 Jan 1993         Bruce Evans     Fixed unmatched spl calls
+ *
  *     @(#)swap_pager.c        7.4 (Berkeley) 5/7/91
  */
 static char rcsid[] = "$Header: /usr/bill/working/sys/vm/RCS/swap_pager.c,v 1.3 92/01/21 21:57:58 william Exp $";
  *     @(#)swap_pager.c        7.4 (Berkeley) 5/7/91
  */
 static char rcsid[] = "$Header: /usr/bill/working/sys/vm/RCS/swap_pager.c,v 1.3 92/01/21 21:57:58 william Exp $";
@@ -553,13 +561,13 @@ swap_pager_io(swp, m, flags)
        splx(s);
                        return(VM_PAGER_FAIL);
                }
        splx(s);
                        return(VM_PAGER_FAIL);
                }
-       splx(s);
 #ifdef DEBUG
                if (swpagerdebug & (SDB_FULL|SDB_ALLOCBLK))
                        printf("swpg_io: %x alloc blk %x at ix %x\n",
                               swp->sw_blocks, swb->swb_block, ix);
 #endif
        }
 #ifdef DEBUG
                if (swpagerdebug & (SDB_FULL|SDB_ALLOCBLK))
                        printf("swpg_io: %x alloc blk %x at ix %x\n",
                               swp->sw_blocks, swb->swb_block, ix);
 #endif
        }
+       splx(s);
 
        /*
         * Allocate a kernel virtual address and initialize so that PTE
 
        /*
         * Allocate a kernel virtual address and initialize so that PTE