summaryrefslogtreecommitdiff
path: root/libpager
diff options
context:
space:
mode:
authorMichael I. Bushnell <mib@gnu.org>1996-04-18 20:02:59 +0000
committerMichael I. Bushnell <mib@gnu.org>1996-04-18 20:02:59 +0000
commit254f62587295853d3c23d4959ead24d06e63a945 (patch)
treedaf77fd00a272d97979d3428f4231fb096aa6054 /libpager
parentd58ec95706ffbf4161ab8992997dbe807711e180 (diff)
(_pager_do_write_request): If kernel didn't keep a copy, turn of
INCORE bit.
Diffstat (limited to 'libpager')
-rw-r--r--libpager/data-return.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libpager/data-return.c b/libpager/data-return.c
index 865974e2..562af955 100644
--- a/libpager/data-return.c
+++ b/libpager/data-return.c
@@ -108,7 +108,10 @@ _pager_do_write_request (mach_port_t object,
pm_entries[i] |= PM_PAGINGOUT | PM_INIT;
#else
for (i = 0; i < npages; i++)
- pm_entries[i] += PM_PAGINGOUT;
+ pm_entries[i] |= PM_PAGINGOUT;
+ if (!kcopy)
+ for (i = 0; i < npages; i++)
+ pm_entries[i] &= ~PM_INCORE;
#endif
/* If this write occurs while a lock is pending, record