Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/uebayasi-xip]: src/sys/uvm uvn_get: For XIP vnodes, skip read-ahead, bec...



details:   https://anonhg.NetBSD.org/src/rev/81ed03a513d7
branches:  uebayasi-xip
changeset: 751570:81ed03a513d7
user:      uebayasi <uebayasi%NetBSD.org@localhost>
date:      Thu Feb 11 06:26:47 2010 +0000

description:
uvn_get: For XIP vnodes, skip read-ahead, because it's pointless.

diffstat:

 sys/uvm/uvm_vnode.c |  11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diffs (37 lines):

diff -r c32902efed46 -r 81ed03a513d7 sys/uvm/uvm_vnode.c
--- a/sys/uvm/uvm_vnode.c       Thu Feb 11 06:23:04 2010 +0000
+++ b/sys/uvm/uvm_vnode.c       Thu Feb 11 06:26:47 2010 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: uvm_vnode.c,v 1.93 2010/01/08 11:35:12 pooka Exp $     */
+/*     $NetBSD: uvm_vnode.c,v 1.93.2.1 2010/02/11 06:26:47 uebayasi Exp $      */
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -50,7 +50,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_vnode.c,v 1.93 2010/01/08 11:35:12 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_vnode.c,v 1.93.2.1 2010/02/11 06:26:47 uebayasi Exp $");
 
 #include "opt_uvmhist.h"
 
@@ -177,11 +177,18 @@
 
        UVMHIST_LOG(ubchist, "vp %p off 0x%x", vp, (int)offset, 0,0);
 
+#ifdef XIP
+       if ((vp->v_flag & VV_XIP) != 0)
+               goto uvn_get_ra_done;
+#endif
        if ((access_type & VM_PROT_WRITE) == 0 && (flags & PGO_LOCKED) == 0) {
                vn_ra_allocctx(vp);
                uvm_ra_request(vp->v_ractx, advice, uobj, offset,
                    *npagesp << PAGE_SHIFT);
        }
+#ifdef XIP
+uvn_get_ra_done:
+#endif
 
        error = VOP_GETPAGES(vp, offset, pps, npagesp, centeridx,
                             access_type, advice, flags);



Home | Main Index | Thread Index | Old Index