convert vm_page bit fields to flags
[unix-history] / usr / src / sys / vm / swap_pager.c
index 0f4a2ec..e708358 100644 (file)
@@ -11,7 +11,7 @@
  *
  * from: Utah $Hdr: swap_pager.c 1.4 91/04/30$
  *
  *
  * from: Utah $Hdr: swap_pager.c 1.4 91/04/30$
  *
- *     @(#)swap_pager.c        7.9 (Berkeley) %G%
+ *     @(#)swap_pager.c        7.14 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
 #include <sys/buf.h>
 #include <sys/map.h>
 #include <sys/vnode.h>
 #include <sys/buf.h>
 #include <sys/map.h>
 #include <sys/vnode.h>
-#include <sys/specdev.h>
 #include <sys/malloc.h>
 
 #include <sys/malloc.h>
 
+#include <miscfs/specfs/specdev.h>
+
 #include <vm/vm.h>
 #include <vm/queue.h>
 #include <vm/vm_page.h>
 #include <vm/vm.h>
 #include <vm/queue.h>
 #include <vm/vm_page.h>
@@ -382,7 +383,7 @@ swap_pager_putpage(pager, m, sync)
 #endif
        if (pager == NULL) {
                (void) swap_pager_clean(NULL, B_WRITE);
 #endif
        if (pager == NULL) {
                (void) swap_pager_clean(NULL, B_WRITE);
-               return;
+               return (VM_PAGER_OK);           /* ??? */
        }
        flags = B_WRITE;
        if (!sync)
        }
        flags = B_WRITE;
        if (!sync)
@@ -650,7 +651,7 @@ swap_pager_io(swp, m, flags)
        else
                --swap_pager_poip;
 #endif
        else
                --swap_pager_poip;
 #endif
-       rv = (bp->b_flags & B_ERROR) ? VM_PAGER_FAIL : VM_PAGER_OK;
+       rv = (bp->b_flags & B_ERROR) ? VM_PAGER_ERROR : VM_PAGER_OK;
        bp->b_flags &= ~(B_BUSY|B_WANTED|B_PHYS|B_PAGET|B_UAREA|B_DIRTY);
        bp->av_forw = bswlist.av_forw;
        bswlist.av_forw = bp;
        bp->b_flags &= ~(B_BUSY|B_WANTED|B_PHYS|B_PAGET|B_UAREA|B_DIRTY);
        bp->av_forw = bswlist.av_forw;
        bswlist.av_forw = bp;
@@ -661,14 +662,14 @@ swap_pager_io(swp, m, flags)
                thread_wakeup((int)&bswlist);
        }
        if ((flags & B_READ) == 0 && rv == VM_PAGER_OK) {
                thread_wakeup((int)&bswlist);
        }
        if ((flags & B_READ) == 0 && rv == VM_PAGER_OK) {
-               m->clean = TRUE;
+               m->flags |= PG_CLEAN;
                pmap_clear_modify(VM_PAGE_TO_PHYS(m));
        }
        splx(s);
 #ifdef DEBUG
        if (swpagerdebug & SDB_IO)
                printf("swpg_io:  IO done: bp %x, rv %d\n", bp, rv);
                pmap_clear_modify(VM_PAGE_TO_PHYS(m));
        }
        splx(s);
 #ifdef DEBUG
        if (swpagerdebug & SDB_IO)
                printf("swpg_io:  IO done: bp %x, rv %d\n", bp, rv);
-       if ((swpagerdebug & SDB_FAIL) && rv == VM_PAGER_FAIL)
+       if ((swpagerdebug & SDB_FAIL) && rv == VM_PAGER_ERROR)
                printf("swpg_io: IO error\n");
 #endif
        vm_pager_unmap_page(kva);
                printf("swpg_io: IO error\n");
 #endif
        vm_pager_unmap_page(kva);
@@ -686,7 +687,7 @@ swap_pager_clean(m, rw)
 #ifdef DEBUG
        /* save panic time state */
        if ((swpagerdebug & SDB_ANOMPANIC) && panicstr)
 #ifdef DEBUG
        /* save panic time state */
        if ((swpagerdebug & SDB_ANOMPANIC) && panicstr)
-               return;
+               return (FALSE);                 /* ??? */
        if (swpagerdebug & SDB_FOLLOW)
                printf("swpg_clean(%x, %d)\n", m, rw);
 #endif
        if (swpagerdebug & SDB_FOLLOW)
                printf("swpg_clean(%x, %d)\n", m, rw);
 #endif
@@ -799,7 +800,7 @@ swap_pager_finish(spc)
                if (swpagerdebug & SDB_ANOM)
                        printf("swap_pager_finish: page %x dirty again\n",
                               spc->spc_m);
                if (swpagerdebug & SDB_ANOM)
                        printf("swap_pager_finish: page %x dirty again\n",
                               spc->spc_m);
-               spc->spc_m->busy = FALSE;
+               spc->spc_m->flags &= ~PG_BUSY;
                PAGE_WAKEUP(spc->spc_m);
                vm_object_unlock(object);
                return(1);
                PAGE_WAKEUP(spc->spc_m);
                vm_object_unlock(object);
                return(1);
@@ -813,12 +814,12 @@ swap_pager_finish(spc)
        if (spc->spc_flags & SPC_ERROR) {
                printf("swap_pager_finish: clean of page %x failed\n",
                       VM_PAGE_TO_PHYS(spc->spc_m));
        if (spc->spc_flags & SPC_ERROR) {
                printf("swap_pager_finish: clean of page %x failed\n",
                       VM_PAGE_TO_PHYS(spc->spc_m));
-               spc->spc_m->laundry = TRUE;
+               spc->spc_m->flags |= PG_LAUNDRY;
        } else {
        } else {
-               spc->spc_m->clean = TRUE;
+               spc->spc_m->flags |= PG_CLEAN;
                pmap_clear_modify(VM_PAGE_TO_PHYS(spc->spc_m));
        }
                pmap_clear_modify(VM_PAGE_TO_PHYS(spc->spc_m));
        }
-       spc->spc_m->busy = FALSE;
+       spc->spc_m->flags &= ~PG_BUSY;
        PAGE_WAKEUP(spc->spc_m);
 
        vm_object_unlock(object);
        PAGE_WAKEUP(spc->spc_m);
 
        vm_object_unlock(object);