diff options
author | alc <alc@FreeBSD.org> | 2012-01-03 03:29:01 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2012-01-03 03:29:01 +0000 |
commit | 9976fae0420f3eec4397fb825c227ad21c064262 (patch) | |
tree | 76cca13c500cafaae7ee38fe0920162130b36983 | |
parent | 6b69dce99342af3e1735d81b77ce41c6a8aeb897 (diff) | |
download | FreeBSD-src-9976fae0420f3eec4397fb825c227ad21c064262.zip FreeBSD-src-9976fae0420f3eec4397fb825c227ad21c064262.tar.gz |
Don't pass VM_ALLOC_ZERO to vm_page_grab() in tmpfs_mappedwrite() and
tmpfs_nocacheread(). It is both unnecessary and a pessimization. It
results in either the page being zeroed twice or zeroed first and then
overwritten by an I/O operation.
MFC after: 3 weeks
-rw-r--r-- | sys/fs/tmpfs/tmpfs_vnops.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/fs/tmpfs/tmpfs_vnops.c b/sys/fs/tmpfs/tmpfs_vnops.c index dfe1183..0abd3c7 100644 --- a/sys/fs/tmpfs/tmpfs_vnops.c +++ b/sys/fs/tmpfs/tmpfs_vnops.c @@ -442,7 +442,7 @@ tmpfs_nocacheread(vm_object_t tobj, vm_pindex_t idx, VM_OBJECT_LOCK(tobj); vm_object_pip_add(tobj, 1); m = vm_page_grab(tobj, idx, VM_ALLOC_WIRED | - VM_ALLOC_ZERO | VM_ALLOC_NORMAL | VM_ALLOC_RETRY); + VM_ALLOC_NORMAL | VM_ALLOC_RETRY); if (m->valid != VM_PAGE_BITS_ALL) { if (vm_pager_has_page(tobj, idx, NULL, NULL)) { error = vm_pager_get_pages(tobj, &m, 1, 0); @@ -666,7 +666,7 @@ nocache: VM_OBJECT_LOCK(tobj); vm_object_pip_add(tobj, 1); tpg = vm_page_grab(tobj, idx, VM_ALLOC_WIRED | - VM_ALLOC_ZERO | VM_ALLOC_NORMAL | VM_ALLOC_RETRY); + VM_ALLOC_NORMAL | VM_ALLOC_RETRY); if (tpg->valid != VM_PAGE_BITS_ALL) { if (vm_pager_has_page(tobj, idx, NULL, NULL)) { error = vm_pager_get_pages(tobj, &tpg, 1, 0); |