Module Name: src
Committed By: uebayasi
Date: Mon May 31 13:26:38 UTC 2010
Modified Files:
src/sys/arch/alpha/alpha [uebayasi-xip]: pmap.c
src/sys/arch/arm/arm32 [uebayasi-xip]: mem.c pmap.c
src/sys/arch/arm/imx [uebayasi-xip]: imx31_space.c
src/sys/arch/arm/include [uebayasi-xip]: bus.h
src/sys/arch/hppa/hppa [uebayasi-xip]: pmap.c
src/sys/arch/ia64/ia64 [uebayasi-xip]: pmap.c
src/sys/conf [uebayasi-xip]: files
src/sys/dev [uebayasi-xip]: flash.c
src/sys/miscfs/genfs [uebayasi-xip]: genfs_io.c
src/sys/uvm [uebayasi-xip]: uvm_bio.c uvm_extern.h uvm_fault.c uvm_km.c
uvm_loan.c uvm_object.c uvm_page.c uvm_page.h
Added Files:
src/sys/rump/librump/rumpkern/opt [uebayasi-xip]: opt_direct_page.h
Removed Files:
src/sys/rump/librump/rumpkern/opt [uebayasi-xip]: opt_device_page.h
Log Message:
Re-define the definition of "device page"; device pages are pages of
device memory. Pages which don't have vm_page (== can't be used for
generic use), but whose PV are tracked, are called "direct pages" from
now.
To generate a diff of this commit:
cvs rdiff -u -r1.252.2.2 -r1.252.2.3 src/sys/arch/alpha/alpha/pmap.c
cvs rdiff -u -r1.26.6.3 -r1.26.6.4 src/sys/arch/arm/arm32/mem.c
cvs rdiff -u -r1.211.2.12 -r1.211.2.13 src/sys/arch/arm/arm32/pmap.c
cvs rdiff -u -r1.3.2.2 -r1.3.2.3 src/sys/arch/arm/imx/imx31_space.c
cvs rdiff -u -r1.20.2.1 -r1.20.2.2 src/sys/arch/arm/include/bus.h
cvs rdiff -u -r1.63.2.4 -r1.63.2.5 src/sys/arch/hppa/hppa/pmap.c
cvs rdiff -u -r1.24.2.2 -r1.24.2.3 src/sys/arch/ia64/ia64/pmap.c
cvs rdiff -u -r1.974.2.3 -r1.974.2.4 src/sys/conf/files
cvs rdiff -u -r1.1.2.8 -r1.1.2.9 src/sys/dev/flash.c
cvs rdiff -u -r1.36.2.7 -r1.36.2.8 src/sys/miscfs/genfs/genfs_io.c
cvs rdiff -u -r1.1.2.1 -r0 \
src/sys/rump/librump/rumpkern/opt/opt_device_page.h
cvs rdiff -u -r0 -r1.1.2.1 \
src/sys/rump/librump/rumpkern/opt/opt_direct_page.h
cvs rdiff -u -r1.68.2.2 -r1.68.2.3 src/sys/uvm/uvm_bio.c
cvs rdiff -u -r1.161.2.6 -r1.161.2.7 src/sys/uvm/uvm_extern.h
cvs rdiff -u -r1.166.2.5 -r1.166.2.6 src/sys/uvm/uvm_fault.c
cvs rdiff -u -r1.104.2.3 -r1.104.2.4 src/sys/uvm/uvm_km.c
cvs rdiff -u -r1.77.2.1 -r1.77.2.2 src/sys/uvm/uvm_loan.c
cvs rdiff -u -r1.7.2.1 -r1.7.2.2 src/sys/uvm/uvm_object.c
cvs rdiff -u -r1.153.2.38 -r1.153.2.39 src/sys/uvm/uvm_page.c
cvs rdiff -u -r1.59.2.21 -r1.59.2.22 src/sys/uvm/uvm_page.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/alpha/alpha/pmap.c
diff -u src/sys/arch/alpha/alpha/pmap.c:1.252.2.2 src/sys/arch/alpha/alpha/pmap.c:1.252.2.3
--- src/sys/arch/alpha/alpha/pmap.c:1.252.2.2 Wed Apr 28 08:31:05 2010
+++ src/sys/arch/alpha/alpha/pmap.c Mon May 31 13:26:36 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.252.2.2 2010/04/28 08:31:05 uebayasi Exp $ */
+/* $NetBSD: pmap.c,v 1.252.2.3 2010/05/31 13:26:36 uebayasi Exp $ */
/*-
* Copyright (c) 1998, 1999, 2000, 2001, 2007, 2008 The NetBSD Foundation, Inc.
@@ -137,12 +137,12 @@
#include "opt_lockdebug.h"
#include "opt_sysv.h"
#include "opt_multiprocessor.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.252.2.2 2010/04/28 08:31:05 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.252.2.3 2010/05/31 13:26:36 uebayasi Exp $");
#include <sys/param.h>
#include <sys/systm.h>
Index: src/sys/arch/arm/arm32/mem.c
diff -u src/sys/arch/arm/arm32/mem.c:1.26.6.3 src/sys/arch/arm/arm32/mem.c:1.26.6.4
--- src/sys/arch/arm/arm32/mem.c:1.26.6.3 Thu Feb 25 03:30:22 2010
+++ src/sys/arch/arm/arm32/mem.c Mon May 31 13:26:36 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: mem.c,v 1.26.6.3 2010/02/25 03:30:22 uebayasi Exp $ */
+/* $NetBSD: mem.c,v 1.26.6.4 2010/05/31 13:26:36 uebayasi Exp $ */
/*
* Copyright (c) 1982, 1986, 1990, 1993
@@ -74,11 +74,11 @@
#include "opt_arm32_pmap.h"
#include "opt_compat_netbsd.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mem.c,v 1.26.6.3 2010/02/25 03:30:22 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mem.c,v 1.26.6.4 2010/05/31 13:26:36 uebayasi Exp $");
#include <sys/param.h>
#include <sys/conf.h>
Index: src/sys/arch/arm/arm32/pmap.c
diff -u src/sys/arch/arm/arm32/pmap.c:1.211.2.12 src/sys/arch/arm/arm32/pmap.c:1.211.2.13
--- src/sys/arch/arm/arm32/pmap.c:1.211.2.12 Fri Apr 30 14:39:07 2010
+++ src/sys/arch/arm/arm32/pmap.c Mon May 31 13:26:36 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.211.2.12 2010/04/30 14:39:07 uebayasi Exp $ */
+/* $NetBSD: pmap.c,v 1.211.2.13 2010/05/31 13:26:36 uebayasi Exp $ */
/*
* Copyright 2003 Wasabi Systems, Inc.
@@ -191,7 +191,7 @@
#include "opt_ddb.h"
#include "opt_lockdebug.h"
#include "opt_multiprocessor.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
@@ -213,7 +213,7 @@
#include <machine/param.h>
#include <arm/arm32/katelib.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.211.2.12 2010/04/30 14:39:07 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.211.2.13 2010/05/31 13:26:36 uebayasi Exp $");
#ifdef PMAP_DEBUG
Index: src/sys/arch/arm/imx/imx31_space.c
diff -u src/sys/arch/arm/imx/imx31_space.c:1.3.2.2 src/sys/arch/arm/imx/imx31_space.c:1.3.2.3
--- src/sys/arch/arm/imx/imx31_space.c:1.3.2.2 Thu Apr 29 03:16:18 2010
+++ src/sys/arch/arm/imx/imx31_space.c Mon May 31 13:26:36 2010
@@ -1,7 +1,7 @@
-/* $Id: imx31_space.c,v 1.3.2.2 2010/04/29 03:16:18 uebayasi Exp $ */
+/* $Id: imx31_space.c,v 1.3.2.3 2010/05/31 13:26:36 uebayasi Exp $ */
/* derived from: */
-/* $NetBSD: imx31_space.c,v 1.3.2.2 2010/04/29 03:16:18 uebayasi Exp $ */
+/* $NetBSD: imx31_space.c,v 1.3.2.3 2010/05/31 13:26:36 uebayasi Exp $ */
/*
* Copyright (c) 2001, 2002 Wasabi Systems, Inc.
@@ -166,8 +166,8 @@
/* physload */
imx31_bs_physload,
imx31_bs_physunload,
- imx31_bs_physload_device,
- imx31_bs_physunload_device,
+ imx31_bs_physload_direct,
+ imx31_bs_physunload_direct,
};
int
@@ -302,18 +302,18 @@
}
void *
-imx31_bs_physload_device(void *t, bus_addr_t addr, bus_size_t size, int prot, int flags)
+imx31_bs_physload_direct(void *t, bus_addr_t addr, bus_size_t size, int prot, int flags)
{
/* XXX */
const paddr_t start = imx31_bs_mmap(t, addr, 0, prot, flags);
const paddr_t end = imx31_bs_mmap(t, addr + size, 0, prot, flags);
- return uvm_page_physload_device(start, end, start, end, prot, flags);
+ return uvm_page_physload_direct(start, end, start, end, prot, flags);
}
void
-imx31_bs_physunload_device(void *t, void *phys)
+imx31_bs_physunload_direct(void *t, void *phys)
{
- uvm_page_physunload_device(phys);
+ uvm_page_physunload_direct(phys);
}
Index: src/sys/arch/arm/include/bus.h
diff -u src/sys/arch/arm/include/bus.h:1.20.2.1 src/sys/arch/arm/include/bus.h:1.20.2.2
--- src/sys/arch/arm/include/bus.h:1.20.2.1 Wed Apr 28 14:56:14 2010
+++ src/sys/arch/arm/include/bus.h Mon May 31 13:26:36 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: bus.h,v 1.20.2.1 2010/04/28 14:56:14 uebayasi Exp $ */
+/* $NetBSD: bus.h,v 1.20.2.2 2010/05/31 13:26:36 uebayasi Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998, 2001 The NetBSD Foundation, Inc.
@@ -276,9 +276,9 @@
void * (*bs_physload)(void *, bus_addr_t, bus_size_t,
int, int);
void (*bs_physunload)(void *, void *);
- void * (*bs_physload_device)(void *, bus_addr_t, bus_size_t,
+ void * (*bs_physload_direct)(void *, bus_addr_t, bus_size_t,
int, int);
- void (*bs_physunload_device)(void *, void *);
+ void (*bs_physunload_direct)(void *, void *);
#endif
};
@@ -705,11 +705,11 @@
bus_addr_t addr, bus_size_t size, int prot, int flags);
#define bs_physunload_proto(f) \
void __bs_c(f,_bs_physunload)(void *t, void *phys)
-#define bs_physload_device_proto(f) \
-void * __bs_c(f,_bs_physload_device)(void *t, \
+#define bs_physload_direct_proto(f) \
+void * __bs_c(f,_bs_physload_direct)(void *t, \
bus_addr_t addr, bus_size_t size, int prot, int flags);
-#define bs_physunload_device_proto(f) \
-void __bs_c(f,_bs_physunload_device)(void *t, void *phys)
+#define bs_physunload_direct_proto(f) \
+void __bs_c(f,_bs_physunload_direct)(void *t, void *phys)
#endif
#define bs_protos(f) \
@@ -759,8 +759,8 @@
bs_c_8_proto(f); \
bs_physload_proto(f); \
bs_physunload_proto(f); \
-bs_physload_device_proto(f); \
-bs_physunload_device_proto(f);
+bs_physload_direct_proto(f); \
+bs_physunload_direct_proto(f);
#define BUS_SPACE_ALIGNED_POINTER(p, t) ALIGNED_POINTER(p, t)
@@ -771,10 +771,10 @@
(*(t)->bs_physload)((t)->bs_cookie, (a), (s), (p), (f))
#define bus_space_physunload(t, p) \
(*(t)->bs_physunload)((t)->bs_cookie, (p))
-#define bus_space_physload_device(t, a, s, p, f) \
- (*(t)->bs_physload_device)((t)->bs_cookie, (a), (s), (p), (f))
-#define bus_space_physunload_device(t, p) \
- (*(t)->bs_physunload_device)((t)->bs_cookie, (p))
+#define bus_space_physload_direct(t, a, s, p, f) \
+ (*(t)->bs_physload_direct)((t)->bs_cookie, (a), (s), (p), (f))
+#define bus_space_physunload_direct(t, p) \
+ (*(t)->bs_physunload_direct)((t)->bs_cookie, (p))
/* Bus Space DMA macros */
Index: src/sys/arch/hppa/hppa/pmap.c
diff -u src/sys/arch/hppa/hppa/pmap.c:1.63.2.4 src/sys/arch/hppa/hppa/pmap.c:1.63.2.5
--- src/sys/arch/hppa/hppa/pmap.c:1.63.2.4 Fri May 28 08:32:20 2010
+++ src/sys/arch/hppa/hppa/pmap.c Mon May 31 13:26:37 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.63.2.4 2010/05/28 08:32:20 uebayasi Exp $ */
+/* $NetBSD: pmap.c,v 1.63.2.5 2010/05/31 13:26:37 uebayasi Exp $ */
/*-
* Copyright (c) 2001, 2002 The NetBSD Foundation, Inc.
@@ -65,9 +65,9 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.63.2.4 2010/05/28 08:32:20 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.63.2.5 2010/05/31 13:26:37 uebayasi Exp $");
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include "opt_cputype.h"
Index: src/sys/arch/ia64/ia64/pmap.c
diff -u src/sys/arch/ia64/ia64/pmap.c:1.24.2.2 src/sys/arch/ia64/ia64/pmap.c:1.24.2.3
--- src/sys/arch/ia64/ia64/pmap.c:1.24.2.2 Wed Apr 28 08:31:06 2010
+++ src/sys/arch/ia64/ia64/pmap.c Mon May 31 13:26:37 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.24.2.2 2010/04/28 08:31:06 uebayasi Exp $ */
+/* $NetBSD: pmap.c,v 1.24.2.3 2010/05/31 13:26:37 uebayasi Exp $ */
/*-
@@ -85,9 +85,9 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.24.2.2 2010/04/28 08:31:06 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.24.2.3 2010/05/31 13:26:37 uebayasi Exp $");
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
Index: src/sys/conf/files
diff -u src/sys/conf/files:1.974.2.3 src/sys/conf/files:1.974.2.4
--- src/sys/conf/files:1.974.2.3 Fri Apr 30 14:43:03 2010
+++ src/sys/conf/files Mon May 31 13:26:37 2010
@@ -1,4 +1,4 @@
-# $NetBSD: files,v 1.974.2.3 2010/04/30 14:43:03 uebayasi Exp $
+# $NetBSD: files,v 1.974.2.4 2010/05/31 13:26:37 uebayasi Exp $
# @(#)files.newconf 7.5 (Berkeley) 5/10/93
version 20090313
@@ -119,10 +119,10 @@
defflag opt_wapbl.h WAPBL WAPBL_DEBUG
defparam opt_wapbl.h WAPBL_DEBUG_PRINT
-defflag opt_device_page.h DEVICE_PAGE
+defflag opt_direct_page.h DIRECT_PAGE
# eXecute In Place
-defflag opt_xip.h XIP: DEVICE_PAGE
+defflag opt_xip.h XIP: DIRECT_PAGE
# compatibility options
#
Index: src/sys/dev/flash.c
diff -u src/sys/dev/flash.c:1.1.2.8 src/sys/dev/flash.c:1.1.2.9
--- src/sys/dev/flash.c:1.1.2.8 Thu Apr 29 06:29:29 2010
+++ src/sys/dev/flash.c Mon May 31 13:26:37 2010
@@ -1,4 +1,4 @@
-/* $Id: flash.c,v 1.1.2.8 2010/04/29 06:29:29 uebayasi Exp $ */
+/* $Id: flash.c,v 1.1.2.9 2010/05/31 13:26:37 uebayasi Exp $ */
/*-
* Copyright (c) 2010 Tsubai Masanari. All rights reserved.
@@ -238,9 +238,9 @@
#ifdef XIP
#ifndef __BUS_SPACE_HAS_PHYSLOAD
-#error bus_space_physload_device(9) must be supported to use XIP!
+#error bus_space_physload_direct(9) must be supported to use XIP!
#else
- sc->sc_phys = bus_space_physload_device(sc->sc_iot, sc->sc_addr, sc->sc_size,
+ sc->sc_phys = bus_space_physload_direct(sc->sc_iot, sc->sc_addr, sc->sc_size,
PROT_READ | PROT_WRITE, 0);
#endif
#endif
Index: src/sys/miscfs/genfs/genfs_io.c
diff -u src/sys/miscfs/genfs/genfs_io.c:1.36.2.7 src/sys/miscfs/genfs/genfs_io.c:1.36.2.8
--- src/sys/miscfs/genfs/genfs_io.c:1.36.2.7 Wed Apr 28 16:33:47 2010
+++ src/sys/miscfs/genfs/genfs_io.c Mon May 31 13:26:37 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: genfs_io.c,v 1.36.2.7 2010/04/28 16:33:47 uebayasi Exp $ */
+/* $NetBSD: genfs_io.c,v 1.36.2.8 2010/05/31 13:26:37 uebayasi Exp $ */
/*
* Copyright (c) 1982, 1986, 1989, 1993
@@ -31,9 +31,9 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: genfs_io.c,v 1.36.2.7 2010/04/28 16:33:47 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: genfs_io.c,v 1.36.2.8 2010/05/31 13:26:37 uebayasi Exp $");
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
@@ -822,7 +822,7 @@
(off - (lbn << fs_bshift));
}
- pps[i] = uvm_phys_to_vm_page_device(phys_addr);
+ pps[i] = uvm_phys_to_vm_page_direct(phys_addr);
UVMHIST_LOG(ubchist, "xip pgs %d => phys_addr=0x%lx (%p)",
i,
Index: src/sys/uvm/uvm_bio.c
diff -u src/sys/uvm/uvm_bio.c:1.68.2.2 src/sys/uvm/uvm_bio.c:1.68.2.3
--- src/sys/uvm/uvm_bio.c:1.68.2.2 Tue Feb 23 07:05:05 2010
+++ src/sys/uvm/uvm_bio.c Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_bio.c,v 1.68.2.2 2010/02/23 07:05:05 uebayasi Exp $ */
+/* $NetBSD: uvm_bio.c,v 1.68.2.3 2010/05/31 13:26:38 uebayasi Exp $ */
/*
* Copyright (c) 1998 Chuck Silvers.
@@ -34,11 +34,11 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_bio.c,v 1.68.2.2 2010/02/23 07:05:05 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_bio.c,v 1.68.2.3 2010/05/31 13:26:38 uebayasi Exp $");
#include "opt_uvmhist.h"
#include "opt_ubc.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
@@ -339,7 +339,7 @@
mutex_enter(&uobj->vmobjlock);
- if (uvm_pageisdevice_p(pg)) {
+ if (uvm_pageisdirect_p(pg)) {
UVMHIST_LOG(ubchist, "pg is device", i, 0,0,0);
goto ubc_fault_enter;
}
@@ -387,11 +387,11 @@
*/
/* XXXUEBS device pages are always read-only for now */
- rdonly = uvm_pageisdevice_p(pg) ||
+ rdonly = uvm_pageisdirect_p(pg) ||
((access_type & VM_PROT_WRITE) == 0 &&
(pg->flags & PG_RDONLY) != 0) ||
UVM_OBJ_NEEDS_WRITEFAULT(uobj);
- KASSERT(uvm_pageisdevice_p(pg) ||
+ KASSERT(uvm_pageisdirect_p(pg) ||
(pg->flags & PG_RDONLY) == 0 ||
(access_type & VM_PROT_WRITE) == 0 ||
pg->offset < umap->writeoff ||
@@ -401,7 +401,7 @@
error = pmap_enter(ufi->orig_map->pmap, va, VM_PAGE_TO_PHYS(pg),
prot & mask, PMAP_CANFAIL | (access_type & mask));
- if (uvm_pageisdevice_p(pg))
+ if (uvm_pageisdirect_p(pg))
goto ubc_fault_done;
mutex_enter(&uvm_pageqlock);
@@ -552,7 +552,7 @@
for (i = 0; i < npages; i++) {
struct vm_page *pg = pgs[i];
- if (uvm_pageisdevice_p(pg))
+ if (uvm_pageisdirect_p(pg))
goto ubc_alloc_enter;
KASSERT(pg->uobject == uobj);
Index: src/sys/uvm/uvm_extern.h
diff -u src/sys/uvm/uvm_extern.h:1.161.2.6 src/sys/uvm/uvm_extern.h:1.161.2.7
--- src/sys/uvm/uvm_extern.h:1.161.2.6 Fri Apr 30 14:44:37 2010
+++ src/sys/uvm/uvm_extern.h Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_extern.h,v 1.161.2.6 2010/04/30 14:44:37 uebayasi Exp $ */
+/* $NetBSD: uvm_extern.h,v 1.161.2.7 2010/05/31 13:26:38 uebayasi Exp $ */
/*
*
@@ -721,9 +721,9 @@
void *uvm_page_physload(paddr_t, paddr_t,
paddr_t, paddr_t, int);
void uvm_page_physunload(void *);
-void *uvm_page_physload_device(paddr_t, paddr_t,
+void *uvm_page_physload_direct(paddr_t, paddr_t,
paddr_t, paddr_t, int, int);
-void uvm_page_physunload_device(void *);
+void uvm_page_physunload_direct(void *);
void uvm_setpagesize(void);
/* uvm_pager.c */
Index: src/sys/uvm/uvm_fault.c
diff -u src/sys/uvm/uvm_fault.c:1.166.2.5 src/sys/uvm/uvm_fault.c:1.166.2.6
--- src/sys/uvm/uvm_fault.c:1.166.2.5 Sun Feb 28 06:52:12 2010
+++ src/sys/uvm/uvm_fault.c Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_fault.c,v 1.166.2.5 2010/02/28 06:52:12 uebayasi Exp $ */
+/* $NetBSD: uvm_fault.c,v 1.166.2.6 2010/05/31 13:26:38 uebayasi Exp $ */
/*
*
@@ -39,10 +39,10 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_fault.c,v 1.166.2.5 2010/02/28 06:52:12 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_fault.c,v 1.166.2.6 2010/05/31 13:26:38 uebayasi Exp $");
#include "opt_uvmhist.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
@@ -575,7 +575,7 @@
KASSERT(amap != NULL);
KASSERT(uobjpage != NULL);
- KASSERT(uobjpage == PGO_DONTCARE || uvm_pageisdevice_p(uobjpage) ||
+ KASSERT(uobjpage == PGO_DONTCARE || uvm_pageisdirect_p(uobjpage) ||
(uobjpage->flags & PG_BUSY) != 0);
KASSERT(mutex_owned(&amap->am_l));
KASSERT(oanon == NULL || mutex_owned(&oanon->an_lock));
@@ -1582,7 +1582,7 @@
/* locked: maps(read), amap(if there), uobj(if !null), uobjpage(if !null) */
KASSERT(amap == NULL || mutex_owned(&amap->am_l));
KASSERT(uobj == NULL || mutex_owned(&uobj->vmobjlock));
- KASSERT(uobjpage == NULL || uvm_pageisdevice_p(uobjpage) ||
+ KASSERT(uobjpage == NULL || uvm_pageisdirect_p(uobjpage) ||
(uobjpage->flags & PG_BUSY) != 0);
/*
@@ -1602,7 +1602,7 @@
*/
KASSERT(amap == NULL || mutex_owned(&amap->am_l));
KASSERT(uobj == NULL || mutex_owned(&uobj->vmobjlock));
- KASSERT(uobjpage == NULL || uvm_pageisdevice_p(uobjpage) ||
+ KASSERT(uobjpage == NULL || uvm_pageisdirect_p(uobjpage) ||
(uobjpage->flags & PG_BUSY) != 0);
/*
@@ -1646,7 +1646,7 @@
*/
KASSERT(amap == NULL || mutex_owned(&amap->am_l));
KASSERT(uobj == NULL || mutex_owned(&uobj->vmobjlock));
- KASSERT(uobj == NULL || uvm_pageisdevice_p(uobjpage) ||
+ KASSERT(uobj == NULL || uvm_pageisdirect_p(uobjpage) ||
(uobjpage->flags & PG_BUSY) != 0);
/*
@@ -1657,9 +1657,9 @@
* - at this point uobjpage could be PG_WANTED (handle later)
*/
- KASSERT(uvm_pageisdevice_p(uobjpage) || uobj == NULL ||
+ KASSERT(uvm_pageisdirect_p(uobjpage) || uobj == NULL ||
uobj == uobjpage->uobject);
- KASSERT(uvm_pageisdevice_p(uobjpage) || uobj == NULL ||
+ KASSERT(uvm_pageisdirect_p(uobjpage) || uobj == NULL ||
!UVM_OBJ_IS_CLEAN(uobjpage->uobject) ||
(uobjpage->flags & PG_CLEAN) != 0);
@@ -1719,7 +1719,7 @@
if (curpg == NULL || curpg == PGO_DONTCARE) {
continue;
}
- KASSERT(uvm_pageisdevice_p(uobjpage) || curpg->uobject == uobj);
+ KASSERT(uvm_pageisdirect_p(uobjpage) || curpg->uobject == uobj);
/*
* if center page is resident and not PG_BUSY|PG_RELEASED
@@ -1732,7 +1732,7 @@
"(0x%x) with locked get",
curpg, 0,0,0);
} else {
- bool readonly = uvm_pageisdevice_p(uobjpage)
+ bool readonly = uvm_pageisdirect_p(uobjpage)
|| (curpg->flags & PG_RDONLY)
|| (curpg->loan_count > 0)
|| UVM_OBJ_NEEDS_WRITEFAULT(curpg->uobject);
@@ -1757,7 +1757,7 @@
/* locked: maps(read), amap(if there), uobj */
- if (uvm_pageisdevice_p(pg))
+ if (uvm_pageisdirect_p(pg))
goto uvm_fault_lower_neighbor_enter;
/*
@@ -1963,7 +1963,7 @@
pg = uobjpage; /* map in the actual object */
uvmexp.flt_obj++;
- if (uvm_pageisdevice_p(uobjpage)) {
+ if (uvm_pageisdirect_p(uobjpage)) {
/* XIP'ed device pages are always read-only */
goto uvm_fault_lower_direct_done;
}
@@ -2097,7 +2097,7 @@
*/
}
- if (uvm_pageisdevice_p(uobjpage)) {
+ if (uvm_pageisdirect_p(uobjpage)) {
/*
* XIP devices pages are never paged out, no need to
* dispose.
@@ -2163,10 +2163,10 @@
*/
KASSERT(amap == NULL || mutex_owned(&amap->am_l));
KASSERT(uobj == NULL || mutex_owned(&uobj->vmobjlock));
- KASSERT(uobj == NULL || uvm_pageisdevice_p(uobjpage) ||
+ KASSERT(uobj == NULL || uvm_pageisdirect_p(uobjpage) ||
(uobjpage->flags & PG_BUSY) != 0);
KASSERT(anon == NULL || mutex_owned(&anon->an_lock));
- KASSERT(uvm_pageisdevice_p(pg) || (pg->flags & PG_BUSY) != 0);
+ KASSERT(uvm_pageisdirect_p(pg) || (pg->flags & PG_BUSY) != 0);
/*
* all resources are present. we can now map it in and free our
@@ -2177,14 +2177,14 @@
" MAPPING: case2: pm=0x%x, va=0x%x, pg=0x%x, promote=%d",
ufi->orig_map->pmap, ufi->orig_rvaddr, pg, flt->promote);
KASSERT((flt->access_type & VM_PROT_WRITE) == 0 ||
- uvm_pageisdevice_p(pg) || (pg->flags & PG_RDONLY) == 0);
+ uvm_pageisdirect_p(pg) || (pg->flags & PG_RDONLY) == 0);
if (pmap_enter(ufi->orig_map->pmap, ufi->orig_rvaddr,
VM_PAGE_TO_PHYS(pg),
- (uvm_pageisdevice_p(pg) || pg->flags & PG_RDONLY) ?
+ (uvm_pageisdirect_p(pg) || pg->flags & PG_RDONLY) ?
(flt->enter_prot & ~VM_PROT_WRITE) : flt->enter_prot,
flt->access_type | PMAP_CANFAIL | (flt->wire_mapping ? PMAP_WIRED : 0)) != 0) {
- if (uvm_pageisdevice_p(pg)) {
+ if (uvm_pageisdirect_p(pg)) {
/* Device pages never involve paging activity. */
goto uvm_fault_lower_enter_error_done;
}
@@ -2223,7 +2223,7 @@
return ERESTART;
}
- if (!uvm_pageisdevice_p(pg))
+ if (!uvm_pageisdirect_p(pg))
uvm_fault_lower_done(ufi, flt, uobj, anon, pg);
uvmfault_unlockall(ufi, amap, uobj, anon);
Index: src/sys/uvm/uvm_km.c
diff -u src/sys/uvm/uvm_km.c:1.104.2.3 src/sys/uvm/uvm_km.c:1.104.2.4
--- src/sys/uvm/uvm_km.c:1.104.2.3 Fri Apr 30 14:44:38 2010
+++ src/sys/uvm/uvm_km.c Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_km.c,v 1.104.2.3 2010/04/30 14:44:38 uebayasi Exp $ */
+/* $NetBSD: uvm_km.c,v 1.104.2.4 2010/05/31 13:26:38 uebayasi Exp $ */
/*
* Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -127,10 +127,10 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_km.c,v 1.104.2.3 2010/04/30 14:44:38 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_km.c,v 1.104.2.4 2010/05/31 13:26:38 uebayasi Exp $");
#include "opt_uvmhist.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
Index: src/sys/uvm/uvm_loan.c
diff -u src/sys/uvm/uvm_loan.c:1.77.2.1 src/sys/uvm/uvm_loan.c:1.77.2.2
--- src/sys/uvm/uvm_loan.c:1.77.2.1 Fri Feb 12 13:39:10 2010
+++ src/sys/uvm/uvm_loan.c Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_loan.c,v 1.77.2.1 2010/02/12 13:39:10 uebayasi Exp $ */
+/* $NetBSD: uvm_loan.c,v 1.77.2.2 2010/05/31 13:26:38 uebayasi Exp $ */
/*
*
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_loan.c,v 1.77.2.1 2010/02/12 13:39:10 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_loan.c,v 1.77.2.2 2010/05/31 13:26:38 uebayasi Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -540,7 +540,7 @@
}
if (error)
goto fail;
- if (uvm_pageisdevice_p(pgpp[0])) {
+ if (uvm_pageisdirect_p(pgpp[0])) {
error = EBUSY;
goto fail2;
}
@@ -662,7 +662,7 @@
* then we fail the loan.
*/
- if ((error && error != EBUSY) || uvm_pageisdevice_p(pg)) {
+ if ((error && error != EBUSY) || uvm_pageisdirect_p(pg)) {
uvmfault_unlockall(ufi, amap, uobj, NULL);
return (-1);
}
Index: src/sys/uvm/uvm_object.c
diff -u src/sys/uvm/uvm_object.c:1.7.2.1 src/sys/uvm/uvm_object.c:1.7.2.2
--- src/sys/uvm/uvm_object.c:1.7.2.1 Fri Feb 12 13:39:26 2010
+++ src/sys/uvm/uvm_object.c Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_object.c,v 1.7.2.1 2010/02/12 13:39:26 uebayasi Exp $ */
+/* $NetBSD: uvm_object.c,v 1.7.2.2 2010/05/31 13:26:38 uebayasi Exp $ */
/*
* Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_object.c,v 1.7.2.1 2010/02/12 13:39:26 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_object.c,v 1.7.2.2 2010/05/31 13:26:38 uebayasi Exp $");
#include "opt_ddb.h"
#include "opt_uvmhist.h"
@@ -85,7 +85,7 @@
mutex_enter(&uobj->vmobjlock);
for (i = 0; i < npages; i++) {
- if (uvm_pageisdevice_p(pgs[i]))
+ if (uvm_pageisdirect_p(pgs[i]))
continue;
KASSERT(pgs[i] != NULL);
Index: src/sys/uvm/uvm_page.c
diff -u src/sys/uvm/uvm_page.c:1.153.2.38 src/sys/uvm/uvm_page.c:1.153.2.39
--- src/sys/uvm/uvm_page.c:1.153.2.38 Mon May 31 06:38:34 2010
+++ src/sys/uvm/uvm_page.c Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_page.c,v 1.153.2.38 2010/05/31 06:38:34 uebayasi Exp $ */
+/* $NetBSD: uvm_page.c,v 1.153.2.39 2010/05/31 13:26:38 uebayasi Exp $ */
/*
* Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -97,12 +97,12 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_page.c,v 1.153.2.38 2010/05/31 06:38:34 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_page.c,v 1.153.2.39 2010/05/31 13:26:38 uebayasi Exp $");
#include "opt_ddb.h"
#include "opt_uvmhist.h"
#include "opt_readahead.h"
-#include "opt_device_page.h"
+#include "opt_direct_page.h"
#include "opt_xip.h"
#include <sys/param.h>
@@ -135,7 +135,7 @@
static struct vm_physseg vm_physmem_store[VM_PHYSSEG_MAX];
static struct vm_physseg_freelist vm_physmem_freelist =
SIMPLEQ_HEAD_INITIALIZER(vm_physmem_freelist);
-#ifdef DEVICE_PAGE
+#ifdef DIRECT_PAGE
struct vm_physseg *vm_physdev_ptrs[VM_PHYSSEG_MAX];
int vm_nphysdev = 0;
static struct vm_physseg vm_physdev_store[VM_PHYSSEG_MAX];
@@ -195,9 +195,9 @@
static void uvm_pageinsert(struct uvm_object *, struct vm_page *);
static void uvm_pageremove(struct uvm_object *, struct vm_page *);
-#ifdef DEVICE_PAGE
-static void vm_page_device_mdpage_insert(paddr_t);
-static void vm_page_device_mdpage_remove(paddr_t);
+#ifdef DIRECT_PAGE
+static void vm_page_direct_mdpage_insert(paddr_t);
+static void vm_page_direct_mdpage_remove(paddr_t);
#endif
/*
@@ -842,9 +842,9 @@
vm_nphysmem--;
}
-#ifdef DEVICE_PAGE
+#ifdef DIRECT_PAGE
void *
-uvm_page_physload_device(paddr_t start, paddr_t end, paddr_t avail_start,
+uvm_page_physload_direct(paddr_t start, paddr_t end, paddr_t avail_start,
paddr_t avail_end, int prot, int flags)
{
struct vm_physseg *seg;
@@ -856,18 +856,18 @@
seg->prot = prot;
seg->flags = flags; /* XXXUEBS BUS_SPACE_MAP_* */
for (paddr_t pf = start; pf < end; pf++)
- vm_page_device_mdpage_insert(pf);
+ vm_page_direct_mdpage_insert(pf);
vm_nphysdev++;
return seg;
}
void
-uvm_page_physunload_device(void *cookie)
+uvm_page_physunload_direct(void *cookie)
{
struct vm_physseg *seg = cookie;
for (paddr_t pf = seg->start; pf < seg->end; pf++)
- vm_page_device_mdpage_remove(pf);
+ vm_page_direct_mdpage_remove(pf);
uvm_page_physunload_common(&vm_physdev_freelist, vm_physdev_ptrs, seg);
vm_nphysdev--;
}
@@ -924,7 +924,7 @@
SIMPLEQ_INSERT_TAIL(&vm_physmem_freelist,
&vm_physmem_store[lcv], list);
}
-#ifdef DEVICE_PAGE
+#ifdef DIRECT_PAGE
for (lcv = 0; lcv < VM_PHYSSEG_MAX; lcv++) {
SIMPLEQ_INSERT_TAIL(&vm_physdev_freelist,
&vm_physdev_store[lcv], list);
@@ -1029,9 +1029,9 @@
pframe, NULL, offp);
}
-#ifdef DEVICE_PAGE
+#ifdef DIRECT_PAGE
int
-vm_physseg_find_device(paddr_t pframe, int *offp)
+vm_physseg_find_direct(paddr_t pframe, int *offp)
{
return VM_PHYSSEG_FIND(vm_physdev_ptrs, vm_nphysdev, VM_PHYSSEG_OP_PF,
@@ -1157,7 +1157,7 @@
}
-#ifdef DEVICE_PAGE
+#ifdef DIRECT_PAGE
/*
* Device pages don't have struct vm_page objects for various reasons:
*
@@ -1175,31 +1175,31 @@
/* Assume struct vm_page * is aligned to 4 bytes. */
/* XXXUEBS Consider to improve this. */
-#define VM_PAGE_DEVICE_MAGIC 0x2
-#define VM_PAGE_DEVICE_MAGIC_MASK 0x3
-#define VM_PAGE_DEVICE_MAGIC_SHIFT 2
+#define VM_PAGE_DIRECT_MAGIC 0x2
+#define VM_PAGE_DIRECT_MAGIC_MASK 0x3
+#define VM_PAGE_DIRECT_MAGIC_SHIFT 2
struct vm_page *
-uvm_phys_to_vm_page_device(paddr_t pa)
+uvm_phys_to_vm_page_direct(paddr_t pa)
{
paddr_t pf = pa >> PAGE_SHIFT;
- uintptr_t cookie = pf << VM_PAGE_DEVICE_MAGIC_SHIFT;
- return (void *)(cookie | VM_PAGE_DEVICE_MAGIC);
+ uintptr_t cookie = pf << VM_PAGE_DIRECT_MAGIC_SHIFT;
+ return (void *)(cookie | VM_PAGE_DIRECT_MAGIC);
}
static inline paddr_t
-VM_PAGE_DEVICE_TO_PHYS(const struct vm_page *pg)
+VM_PAGE_DIRECT_TO_PHYS(const struct vm_page *pg)
{
- uintptr_t cookie = (uintptr_t)pg & ~VM_PAGE_DEVICE_MAGIC_MASK;
- paddr_t pf = cookie >> VM_PAGE_DEVICE_MAGIC_SHIFT;
+ uintptr_t cookie = (uintptr_t)pg & ~VM_PAGE_DIRECT_MAGIC_MASK;
+ paddr_t pf = cookie >> VM_PAGE_DIRECT_MAGIC_SHIFT;
return pf << PAGE_SHIFT;
}
bool
-uvm_pageisdevice_p(const struct vm_page *pg)
+uvm_pageisdirect_p(const struct vm_page *pg)
{
- return ((uintptr_t)pg & VM_PAGE_DEVICE_MAGIC_MASK) == VM_PAGE_DEVICE_MAGIC;
+ return ((uintptr_t)pg & VM_PAGE_DIRECT_MAGIC_MASK) == VM_PAGE_DIRECT_MAGIC;
}
#endif
@@ -1216,10 +1216,10 @@
int off;
int psi;
-#ifdef DEVICE_PAGE
- psi = vm_physseg_find_device(pf, &off);
+#ifdef DIRECT_PAGE
+ psi = vm_physseg_find_direct(pf, &off);
if (psi != -1)
- return(uvm_phys_to_vm_page_device(pa));
+ return(uvm_phys_to_vm_page_direct(pa));
#endif
psi = vm_physseg_find(pf, &off);
if (psi != -1)
@@ -1231,20 +1231,12 @@
uvm_vm_page_to_phys(const struct vm_page *pg)
{
-#ifdef DEVICE_PAGE
- if (uvm_pageisdevice_p(pg)) {
- return VM_PAGE_DEVICE_TO_PHYS(pg);
+#ifdef DIRECT_PAGE
+ if (uvm_pageisdirect_p(pg)) {
+ return VM_PAGE_DIRECT_TO_PHYS(pg);
}
#endif
return pg->phys_addr;
- const struct vm_physseg *seg;
- int psi;
-
- psi = VM_PHYSSEG_FIND(vm_physmem_ptrs, vm_nphysmem, VM_PHYSSEG_OP_PG, 0, pg, NULL);
- KASSERT(psi != -1);
- seg = vm_physmem_ptrs[psi];
- return (seg->start + pg - seg->pgs) * PAGE_SIZE;
-#endif
}
@@ -1260,19 +1252,19 @@
* XXX Consider to allocate slots on-demand.
*/
-static struct vm_page_md *vm_page_device_mdpage_lookup(struct vm_page *);
+static struct vm_page_md *vm_page_direct_mdpage_lookup(struct vm_page *);
struct vm_page_md *
uvm_vm_page_to_md(struct vm_page *pg)
{
- return uvm_pageisdevice_p(pg) ?
- vm_page_device_mdpage_lookup(pg) : &pg->mdpage;
+ return uvm_pageisdirect_p(pg) ?
+ vm_page_direct_mdpage_lookup(pg) : &pg->mdpage;
}
-struct vm_page_device_mdpage_entry {
+struct vm_page_direct_mdpage_entry {
struct vm_page_md mde_mdpage;
- SLIST_ENTRY(vm_page_device_mdpage_entry) mde_hash;
+ SLIST_ENTRY(vm_page_direct_mdpage_entry) mde_hash;
paddr_t mde_pf;
};
@@ -1285,38 +1277,38 @@
#define MDPG_HASH_SIZE 256 /* XXX */
#define MDPG_HASH_LOCK_CNT 4 /* XXX */
-struct vm_page_device_mdpage {
+struct vm_page_direct_mdpage {
kmutex_t locks[MDPG_HASH_LOCK_CNT];
- struct vm_page_device_mdpage_head {
- SLIST_HEAD(, vm_page_device_mdpage_entry) list;
+ struct vm_page_direct_mdpage_head {
+ SLIST_HEAD(, vm_page_direct_mdpage_entry) list;
} heads[MDPG_HASH_SIZE];
};
/* Global for now. Consider to make this per-vm_physseg. */
-struct vm_page_device_mdpage vm_page_device_mdpage;
+struct vm_page_direct_mdpage vm_page_direct_mdpage;
-static struct vm_page_device_mdpage_head *
-vm_page_device_mdpage_head(u_int hash)
+static struct vm_page_direct_mdpage_head *
+vm_page_direct_mdpage_head(u_int hash)
{
- return &vm_page_device_mdpage.heads[hash % MDPG_HASH_SIZE];
+ return &vm_page_direct_mdpage.heads[hash % MDPG_HASH_SIZE];
}
static kmutex_t *
-vm_page_device_mdpage_lock(u_int hash)
+vm_page_direct_mdpage_lock(u_int hash)
{
- return &vm_page_device_mdpage.locks[hash % MDPG_HASH_LOCK_CNT];
+ return &vm_page_direct_mdpage.locks[hash % MDPG_HASH_LOCK_CNT];
}
static void
-vm_page_device_mdpage_insert(paddr_t pf)
+vm_page_direct_mdpage_insert(paddr_t pf)
{
u_int hash = (u_int)pf;
- kmutex_t *lock = vm_page_device_mdpage_lock(hash);
- struct vm_page_device_mdpage_head *head = vm_page_device_mdpage_head(hash);
+ kmutex_t *lock = vm_page_direct_mdpage_lock(hash);
+ struct vm_page_direct_mdpage_head *head = vm_page_direct_mdpage_head(hash);
- struct vm_page_device_mdpage_entry *mde = kmem_zalloc(sizeof(*mde), KM_SLEEP);
+ struct vm_page_direct_mdpage_entry *mde = kmem_zalloc(sizeof(*mde), KM_SLEEP);
VM_MDPAGE_INIT(&mde->mde_mdpage, pf << PAGE_SHIFT);
mde->mde_pf = pf;
@@ -1327,14 +1319,14 @@
}
static void
-vm_page_device_mdpage_remove(paddr_t pf)
+vm_page_direct_mdpage_remove(paddr_t pf)
{
u_int hash = (u_int)pf;
- kmutex_t *lock = vm_page_device_mdpage_lock(hash);
- struct vm_page_device_mdpage_head *head = vm_page_device_mdpage_head(hash);
+ kmutex_t *lock = vm_page_direct_mdpage_lock(hash);
+ struct vm_page_direct_mdpage_head *head = vm_page_direct_mdpage_head(hash);
- struct vm_page_device_mdpage_entry *mde;
- struct vm_page_device_mdpage_entry *prev = NULL;
+ struct vm_page_direct_mdpage_entry *mde;
+ struct vm_page_direct_mdpage_entry *prev = NULL;
mutex_spin_enter(lock);
SLIST_FOREACH(mde, &head->list, mde_hash) {
@@ -1354,14 +1346,14 @@
}
static struct vm_page_md *
-vm_page_device_mdpage_lookup(struct vm_page *pg)
+vm_page_direct_mdpage_lookup(struct vm_page *pg)
{
- paddr_t pf = VM_PAGE_DEVICE_TO_PHYS(pg) >> PAGE_SHIFT;
+ paddr_t pf = VM_PAGE_DIRECT_TO_PHYS(pg) >> PAGE_SHIFT;
u_int hash = (u_int)pf;
- kmutex_t *lock = vm_page_device_mdpage_lock(hash);
- struct vm_page_device_mdpage_head *head = vm_page_device_mdpage_head(hash);
+ kmutex_t *lock = vm_page_direct_mdpage_lock(hash);
+ struct vm_page_direct_mdpage_head *head = vm_page_direct_mdpage_head(hash);
- struct vm_page_device_mdpage_entry *mde = NULL;
+ struct vm_page_direct_mdpage_entry *mde = NULL;
mutex_spin_enter(lock);
SLIST_FOREACH(mde, &head->list, mde_hash)
@@ -2371,8 +2363,8 @@
{
return
-#ifdef DEVICE_PAGE
- (vm_physseg_find_device(atop(pa), NULL) != -1) ||
+#ifdef DIRECT_PAGE
+ (vm_physseg_find_direct(atop(pa), NULL) != -1) ||
#endif
(vm_physseg_find(atop(pa), NULL) != -1);
}
Index: src/sys/uvm/uvm_page.h
diff -u src/sys/uvm/uvm_page.h:1.59.2.21 src/sys/uvm/uvm_page.h:1.59.2.22
--- src/sys/uvm/uvm_page.h:1.59.2.21 Mon May 31 06:38:34 2010
+++ src/sys/uvm/uvm_page.h Mon May 31 13:26:38 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_page.h,v 1.59.2.21 2010/05/31 06:38:34 uebayasi Exp $ */
+/* $NetBSD: uvm_page.h,v 1.59.2.22 2010/05/31 13:26:38 uebayasi Exp $ */
/*
* Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -268,7 +268,7 @@
extern struct vm_physseg *vm_physmem_ptrs[VM_PHYSSEG_MAX];
extern int vm_nphysmem;
-#ifdef DEVICE_PAGE
+#ifdef DIRECT_PAGE
extern struct vm_physseg *vm_physdev_ptrs[VM_PHYSSEG_MAX];
extern int vm_nphysdev;
#endif
@@ -304,10 +304,10 @@
void uvm_pagewire(struct vm_page *);
void uvm_pagezero(struct vm_page *);
bool uvm_pageismanaged(paddr_t);
-#ifdef DEVICE_PAGE
-bool uvm_pageisdevice_p(const struct vm_page *);
+#ifdef DIRECT_PAGE
+bool uvm_pageisdirect_p(const struct vm_page *);
#else
-#define uvm_pageisdevice_p(x) false
+#define uvm_pageisdirect_p(x) false
#endif
int uvm_page_lookup_freelist(struct vm_page *);
@@ -316,9 +316,9 @@
struct vm_page *uvm_phys_to_vm_page(paddr_t);
paddr_t uvm_vm_page_to_phys(const struct vm_page *);
#ifdef XIP
-int vm_physseg_find_device(paddr_t, int *);
-struct vm_page *uvm_phys_to_vm_page_device(paddr_t);
-paddr_t uvm_vm_page_to_phys_device(const struct vm_page *);
+int vm_physseg_find_direct(paddr_t, int *);
+struct vm_page *uvm_phys_to_vm_page_direct(paddr_t);
+paddr_t uvm_vm_page_to_phys_direct(const struct vm_page *);
#endif
/*
Added files:
Index: src/sys/rump/librump/rumpkern/opt/opt_direct_page.h
diff -u /dev/null src/sys/rump/librump/rumpkern/opt/opt_direct_page.h:1.1.2.1
--- /dev/null Mon May 31 13:26:39 2010
+++ src/sys/rump/librump/rumpkern/opt/opt_direct_page.h Mon May 31 13:26:38 2010
@@ -0,0 +1 @@
+/* $NetBSD: opt_direct_page.h,v 1.1.2.1 2010/05/31 13:26:38 uebayasi Exp $ */