Module Name:    src
Committed By:   mlelstv
Date:           Sun Feb  7 23:25:07 UTC 2010

Modified Files:
        src/sys/uvm: uvm_fault.c

Log Message:
Make UVMHIST build again.


To generate a diff of this commit:
cvs rdiff -u -r1.163 -r1.164 src/sys/uvm/uvm_fault.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/uvm/uvm_fault.c
diff -u src/sys/uvm/uvm_fault.c:1.163 src/sys/uvm/uvm_fault.c:1.164
--- src/sys/uvm/uvm_fault.c:1.163	Fri Feb  5 02:27:15 2010
+++ src/sys/uvm/uvm_fault.c	Sun Feb  7 23:25:07 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: uvm_fault.c,v 1.163 2010/02/05 02:27:15 uebayasi Exp $	*/
+/*	$NetBSD: uvm_fault.c,v 1.164 2010/02/07 23:25:07 mlelstv Exp $	*/
 
 /*
  *
@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_fault.c,v 1.163 2010/02/05 02:27:15 uebayasi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_fault.c,v 1.164 2010/02/07 23:25:07 mlelstv Exp $");
 
 #include "opt_uvmhist.h"
 
@@ -848,13 +848,14 @@
 	struct uvm_object *uobj;
 	vm_prot_t check_prot;
 	int nback, nforw;
+	UVMHIST_FUNC("uvm_fault_check"); UVMHIST_CALLED(maphist);
 
 	/*
 	 * lookup and lock the maps
 	 */
 
 	if (uvmfault_lookup(ufi, false) == false) {
-		UVMHIST_LOG(maphist, "<- no mapping @ 0x%x", vaddr, 0,0,0);
+		UVMHIST_LOG(maphist, "<- no mapping @ 0x%x", ufi->orig_rvaddr, 0,0,0);
 		return EFAULT;
 	}
 	/* locked: maps(read) */
@@ -1059,6 +1060,7 @@
 	int lcv;
 	vaddr_t currva;
 	bool shadowed;
+	UVMHIST_FUNC("uvm_fault_upper_lookup"); UVMHIST_CALLED(maphist);
 
 	/* locked: maps(read), amap(if there) */
 	KASSERT(amap == NULL || mutex_owned(&amap->am_l));
@@ -1111,7 +1113,7 @@
 	KASSERT(amap == NULL || mutex_owned(&amap->am_l));
 	/* (shadowed == true) if there is an anon at the faulting address */
 	UVMHIST_LOG(maphist, "  shadowed=%d, will_get=%d", shadowed,
-	    (uobj && shadowed != false),0,0);
+	    (ufi->entry->object.uvm_obj && shadowed != false),0,0);
 
 	/*
 	 * note that if we are really short of RAM we could sleep in the above
@@ -1129,6 +1131,7 @@
 	struct uvm_faultinfo *ufi, struct uvm_faultctx *flt,
 	vaddr_t currva, struct vm_page *pg, bool readonly)
 {
+	UVMHIST_FUNC("uvm_fault_upper_neighbor"); UVMHIST_CALLED(maphist);
 
 	/* ignore loaned and busy pages */
 	if (pg == NULL || pg->loan_count != 0 ||
@@ -1269,6 +1272,7 @@
 	struct uvm_object *uobj = ufi->entry->object.uvm_obj;
 	int lcv, gotpages;
 	vaddr_t currva;
+	UVMHIST_FUNC("uvm_fault_lower_lookup"); UVMHIST_CALLED(maphist);
 
 	mutex_enter(&uobj->vmobjlock);
 	/* locked (!shadowed): maps(read), amap (if there), uobj */
@@ -1330,6 +1334,7 @@
 	struct uvm_faultinfo *ufi, struct uvm_faultctx *flt,
 	vaddr_t currva, struct vm_page *pg, bool readonly)
 {
+	UVMHIST_FUNC("uvm_fault_lower_neighor"); UVMHIST_CALLED(maphist);
 
 	/*
 	 * calling pgo_get with PGO_LOCKED returns us pages which
@@ -1381,6 +1386,7 @@
 	struct vm_anon * const anon = anons[flt->centeridx];
 	struct uvm_object *uobj;
 	int error;
+	UVMHIST_FUNC("uvm_fault_upper"); UVMHIST_CALLED(maphist);
 
 	/* locked: maps(read), amap */
 	KASSERT(mutex_owned(&amap->am_l));
@@ -1523,6 +1529,7 @@
 	struct vm_anon * const oanon = anon;
 	struct vm_page *pg;
 	int error;
+	UVMHIST_FUNC("uvm_fault_upper_promote"); UVMHIST_CALLED(maphist);
 
 	UVMHIST_LOG(maphist, "  case 1B: COW fault",0,0,0,0);
 	uvmexp.flt_acow++;
@@ -1580,6 +1587,7 @@
 	struct vm_anon *oanon)
 {
 	struct vm_amap * const amap = ufi->entry->aref.ar_amap;
+	UVMHIST_FUNC("uvm_fault_upper_enter"); UVMHIST_CALLED(maphist);
 
 	/* locked: maps(read), amap, oanon, anon (if different from oanon) */
 	KASSERT(mutex_owned(&amap->am_l));
@@ -1672,6 +1680,7 @@
 #endif
 	bool promote;
 	int error;
+	UVMHIST_FUNC("uvm_fault_lower1"); UVMHIST_CALLED(maphist);
 
 	/*
 	 * handle case 2: faulting on backing object or zero fill
@@ -1760,6 +1769,7 @@
 	int gotpages;
 	int error;
 	voff_t uoff;
+	UVMHIST_FUNC("uvm_fault_lower_io"); UVMHIST_CALLED(maphist);
 
 	/* update rusage counters */
 	curlwp->l_ru.ru_majflt++;
@@ -1775,7 +1785,12 @@
 	    0, flt->access_type & MASK(ufi->entry), ufi->entry->advice,
 	    PGO_SYNCIO);
 	/* locked: pg(if no error) */
+#if 0
 	KASSERT(error != 0 || (pg->flags & PG_BUSY) != 0);
+#else
+	if (error == 0)
+		KASSERT((pg->flags & PG_BUSY) != 0);
+#endif
 
 	/*
 	 * recover from I/O
@@ -1920,6 +1935,7 @@
 	struct vm_amap * const amap = ufi->entry->aref.ar_amap;
 	struct vm_page *pg;
 	struct vm_page *uobjpage = *ruobjpage;
+	UVMHIST_FUNC("uvm_fault_lower_direct_loan"); UVMHIST_CALLED(maphist);
 
 	if (!flt->cow_now) {
 		/* read fault: cap the protection at readonly */
@@ -1963,6 +1979,7 @@
 	struct vm_anon *anon;
 	struct vm_page *pg;
 	int error;
+	UVMHIST_FUNC("uvm_fault_lower_promote"); UVMHIST_CALLED(maphist);
 
 	/*
 	 * if we are going to promote the data to an anon we
@@ -2045,6 +2062,7 @@
 {
 	struct vm_amap * const amap = ufi->entry->aref.ar_amap;
 	int error;
+	UVMHIST_FUNC("uvm_fault_lower_enter"); UVMHIST_CALLED(maphist);
 
 	/*
 	 * locked:
@@ -2065,8 +2083,8 @@
 	 */
 
 	UVMHIST_LOG(maphist,
-	    "  MAPPING: case2: pm=0x%x, va=0x%x, pg=0x%x, promote=%d",
-	    ufi->orig_map->pmap, ufi->orig_rvaddr, pg, promote);
+	    "  MAPPING: case2: pm=0x%x, va=0x%x, pg=0x%x, promote=XXX",
+	    ufi->orig_map->pmap, ufi->orig_rvaddr, pg, 0);
 	KASSERT((flt->access_type & VM_PROT_WRITE) == 0 ||
 		(pg->flags & PG_RDONLY) == 0);
 	if (pmap_enter(ufi->orig_map->pmap, ufi->orig_rvaddr, VM_PAGE_TO_PHYS(pg),
@@ -2114,6 +2132,7 @@
 	struct uvm_object *uobj, struct vm_anon *anon, struct vm_page *pg)
 {
 	struct vm_amap * const amap = ufi->entry->aref.ar_amap;
+	UVMHIST_FUNC("uvm_fault_lower_done"); UVMHIST_CALLED(maphist);
 
 	mutex_enter(&uvm_pageqlock);
 	if (flt->wire_paging) {

Reply via email to