Module Name: src Committed By: pooka Date: Tue Nov 10 16:55:12 UTC 2009
Modified Files: src/sys/rump/librump/rumpvfs: vm_vfs.c Log Message: Code which uses pages fetched by the pager needs PGO_SYNCIO for obvious reasons. To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/sys/rump/librump/rumpvfs/vm_vfs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/rump/librump/rumpvfs/vm_vfs.c diff -u src/sys/rump/librump/rumpvfs/vm_vfs.c:1.13 src/sys/rump/librump/rumpvfs/vm_vfs.c:1.14 --- src/sys/rump/librump/rumpvfs/vm_vfs.c:1.13 Sun Oct 18 00:41:09 2009 +++ src/sys/rump/librump/rumpvfs/vm_vfs.c Tue Nov 10 16:55:12 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: vm_vfs.c,v 1.13 2009/10/18 00:41:09 pooka Exp $ */ +/* $NetBSD: vm_vfs.c,v 1.14 2009/11/10 16:55:12 pooka Exp $ */ /* * Copyright (c) 2008 Antti Kantee. All Rights Reserved. @@ -29,7 +29,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: vm_vfs.c,v 1.13 2009/10/18 00:41:09 pooka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vm_vfs.c,v 1.14 2009/11/10 16:55:12 pooka Exp $"); #include <sys/param.h> @@ -96,7 +96,8 @@ npages = MIN(maxpages, round_page(len) >> PAGE_SHIFT); memset(pgs, 0, npages * sizeof(struct vm_page *)); mutex_enter(&uobj->vmobjlock); - rv = uobj->pgops->pgo_get(uobj, off, pgs, &npages, 0, 0, 0, 0); + rv = uobj->pgops->pgo_get(uobj, off, pgs, &npages, 0, + VM_PROT_READ | VM_PROT_WRITE, 0, PGO_SYNCIO); KASSERT(npages > 0); for (i = 0; i < npages; i++) {