Module Name: src
Committed By: uebayasi
Date: Sun Feb 28 06:29:19 UTC 2010
Modified Files:
src/sys/conf [uebayasi-xip]: std
src/sys/miscfs/genfs [uebayasi-xip]: genfs_io.c
src/sys/uvm [uebayasi-xip]: uvm_page.c
Log Message:
Don't always enable XIP on this branch to prepare the merge. Fix build
without XIP in places.
To generate a diff of this commit:
cvs rdiff -u -r1.13.2.1 -r1.13.2.2 src/sys/conf/std
cvs rdiff -u -r1.36.2.3 -r1.36.2.4 src/sys/miscfs/genfs/genfs_io.c
cvs rdiff -u -r1.153.2.15 -r1.153.2.16 src/sys/uvm/uvm_page.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/conf/std
diff -u src/sys/conf/std:1.13.2.1 src/sys/conf/std:1.13.2.2
--- src/sys/conf/std:1.13.2.1 Mon Feb 8 05:01:09 2010
+++ src/sys/conf/std Sun Feb 28 06:29:19 2010
@@ -1,4 +1,4 @@
-# $NetBSD: std,v 1.13.2.1 2010/02/08 05:01:09 uebayasi Exp $
+# $NetBSD: std,v 1.13.2.2 2010/02/28 06:29:19 uebayasi Exp $
#
# standard MI 'options'
#
@@ -27,5 +27,3 @@
options SCHED_4BSD
pseudo-device cpuctl
-
-options XIP
Index: src/sys/miscfs/genfs/genfs_io.c
diff -u src/sys/miscfs/genfs/genfs_io.c:1.36.2.3 src/sys/miscfs/genfs/genfs_io.c:1.36.2.4
--- src/sys/miscfs/genfs/genfs_io.c:1.36.2.3 Sun Feb 28 05:03:58 2010
+++ src/sys/miscfs/genfs/genfs_io.c Sun Feb 28 06:29:19 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: genfs_io.c,v 1.36.2.3 2010/02/28 05:03:58 uebayasi Exp $ */
+/* $NetBSD: genfs_io.c,v 1.36.2.4 2010/02/28 06:29:19 uebayasi Exp $ */
/*
* Copyright (c) 1982, 1986, 1989, 1993
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: genfs_io.c,v 1.36.2.3 2010/02/28 05:03:58 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: genfs_io.c,v 1.36.2.4 2010/02/28 06:29:19 uebayasi Exp $");
#include "opt_device_page.h"
#include "opt_xip.h"
@@ -60,7 +60,9 @@
#include <uvm/uvm_pager.h>
static int genfs_do_getpages(void *);
+#ifdef XIP
static int genfs_do_getpages_xip(void *);
+#endif
static int genfs_do_directio(struct vmspace *, vaddr_t, size_t, struct vnode *,
off_t, enum uio_rw);
static void genfs_dio_iodone(struct buf *);
@@ -99,6 +101,7 @@
int
genfs_getpages(void *v)
{
+#ifdef XIP
struct vop_getpages_args /* {
struct vnode *a_vp;
voff_t a_offset;
@@ -111,7 +114,6 @@
} */ * const ap = v;
struct vnode * const vp = ap->a_vp;
-#ifdef XIP
if ((vp->v_vflag & VV_XIP) != 0)
return genfs_do_getpages_xip(v);
else
Index: src/sys/uvm/uvm_page.c
diff -u src/sys/uvm/uvm_page.c:1.153.2.15 src/sys/uvm/uvm_page.c:1.153.2.16
--- src/sys/uvm/uvm_page.c:1.153.2.15 Tue Feb 23 15:38:30 2010
+++ src/sys/uvm/uvm_page.c Sun Feb 28 06:29:19 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_page.c,v 1.153.2.15 2010/02/23 15:38:30 uebayasi Exp $ */
+/* $NetBSD: uvm_page.c,v 1.153.2.16 2010/02/28 06:29:19 uebayasi Exp $ */
/*
* Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -71,7 +71,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_page.c,v 1.153.2.15 2010/02/23 15:38:30 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_page.c,v 1.153.2.16 2010/02/28 06:29:19 uebayasi Exp $");
#include "opt_ddb.h"
#include "opt_uvmhist.h"
@@ -165,10 +165,12 @@
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);
#if 0
static void vm_page_device_mdpage_remove(paddr_t);
#endif
+#endif
/*
* per-object tree of pages
@@ -759,6 +761,7 @@
vm_nphysmem++;
}
+#ifdef DEVICE_PAGE
void
uvm_page_physload_device(paddr_t start, paddr_t end, paddr_t avail_start,
paddr_t avail_end, int free_list)
@@ -771,6 +774,7 @@
for (paddr_t pf = start; pf < end; pf++)
vm_page_device_mdpage_insert(pf);
}
+#endif
static void
uvm_page_physload_common(struct vm_physseg * const segs, const int nsegs,
@@ -802,10 +806,12 @@
return;
}
+#ifdef DEVICE_PAGE
if (segs == vm_physdev) {
preload = false;
goto uvm_page_physload_common_insert;
}
+#endif
/*
* check to see if this is a "preload" (i.e. uvm_mem_init hasn't been
@@ -858,7 +864,9 @@
npages = 0;
}
+#ifdef DEVICE_PAGE
uvm_page_physload_common_insert:
+#endif
/*
* now insert us in the proper place in segs[]
*/
@@ -900,8 +908,10 @@
ps->start = start;
ps->end = end;
+#ifdef DEVICE_PAGE
if (segs == vm_physdev)
return;
+#endif
/* XXXUEBS ugly */
ps->avail_start = avail_start;