diff options
-rw-r--r-- | libpager/data-return.c | 5 |
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 |