diff options
author | alc <alc@FreeBSD.org> | 2010-04-17 18:35:07 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2010-04-17 18:35:07 +0000 |
commit | 7075c32b1243bec90cbd3808d668690ad222f77a (patch) | |
tree | cb705f250c62bac9d5993739fd6615a7dea916e5 /lib/libc/stdlib/malloc.c | |
parent | 8baf4dd12a58ea2de4671dc28ea51e6348e7409e (diff) | |
download | FreeBSD-src-7075c32b1243bec90cbd3808d668690ad222f77a.zip FreeBSD-src-7075c32b1243bec90cbd3808d668690ad222f77a.tar.gz |
In vm_object_backing_scan(), setting PG_REFERENCED on a page before
sleeping on that page is nonsensical. Doing so reduces the likelihood
that the page daemon will reclaim the page before the thread waiting in
vm_object_backing_scan() is reawakened. However, it does not guarantee
that the page is not reclaimed, so vm_object_backing_scan() restarts
after reawakening. More importantly, this muddles the meaning of
PG_REFERENCED. There is no reason to believe that the caller of
vm_object_backing_scan() is going to use (i.e., access) the contents of
the page. There is especially no reason to believe that an access is
more likely because vm_object_backing_scan() had to sleep on the page.
Discussed with: kib
MFC after: 3 weeks
Diffstat (limited to 'lib/libc/stdlib/malloc.c')
0 files changed, 0 insertions, 0 deletions