diff options
author | Alan Cox <alc@FreeBSD.org> | 2007-11-22 20:01:38 +0000 |
---|---|---|
committer | Alan Cox <alc@FreeBSD.org> | 2007-11-22 20:01:38 +0000 |
commit | 82cfdd5adc3e1265cacc502ebe86a483c02372d4 (patch) | |
tree | 70de484766159d24bebc5e23dcba141dae31d619 /sys/vm/vnode_pager.c | |
parent | e805d32b8e9bb5863be3546907243a1c4a945ac7 (diff) | |
download | src-82cfdd5adc3e1265cacc502ebe86a483c02372d4.tar.gz src-82cfdd5adc3e1265cacc502ebe86a483c02372d4.zip |
Remove an unnecessary call to pmap_remove_all() and the associated "XXX"
comments from vnode_pager_setsize(). This call was introduced in
revision 1.140 to address a problem that no longer exists.
Specifically, pmap_zero_page_area() has replaced a (possibly)
problematic implementation of page zeroing that was based on
vm_pager_map(), bzero(), and vm_pager_unmap().
Notes
Notes:
svn path=/head/; revision=173846
Diffstat (limited to 'sys/vm/vnode_pager.c')
-rw-r--r-- | sys/vm/vnode_pager.c | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index fd60f7e12c92..0bb5686a3b69 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c @@ -395,21 +395,6 @@ vnode_pager_setsize(vp, nsize) pmap_zero_page_area(m, base, size); /* - * XXX work around SMP data integrity race - * by unmapping the page from user processes. - * The garbage we just cleared may be mapped - * to a user process running on another cpu - * and this code is not running through normal - * I/O channels which handle SMP issues for - * us, so unmap page to synchronize all cpus. - * - * XXX should vm_pager_unmap_page() have - * dealt with this? - */ - vm_page_lock_queues(); - pmap_remove_all(m); - - /* * Clear out partial-page dirty bits. This * has the side effect of setting the valid * bits, but that is ok. There are a bunch @@ -422,6 +407,7 @@ vnode_pager_setsize(vp, nsize) * bits. This would prevent bogus_page * replacement from working properly. */ + vm_page_lock_queues(); vm_page_set_validclean(m, base, size); if (m->dirty != 0) m->dirty = VM_PAGE_BITS_ALL; |