DragonFly bugs List (threaded) for 2007-08
DragonFly BSD
DragonFly bugs List (threaded) for 2007-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Panic after booting


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 25 Aug 2007 16:23:12 -0700 (PDT)

::http://yoyodyne.ath.cx/tmp/LPIC0028.JPG
::
::I can't provide a core dump because this box refuses to dump, it gets 
::stuck at the first MB (prints "1023" and just sits there).
::
::Sascha
::
::-- 
::http://yoyodyne.ath.cx
:
:    Ugh, I must have broken something in the putpages code.  I'll look
:    into it.

    I think I muffed up putpages when I tried to fix msdosfs. I thought
    the pages were busied but it looks like they aren't busied.  In fact,
    it looks like the caller already properly soft-busies the pages so
    I dont need to do that either.

    Tell me if this patch works.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>


Index: vnode_pager.c
===================================================================
RCS file: /cvs/src/sys/vm/vnode_pager.c,v
retrieving revision 1.38
diff -u -p -r1.38 vnode_pager.c
--- vnode_pager.c	22 Aug 2007 16:56:52 -0000	1.38
+++ vnode_pager.c	25 Aug 2007 23:20:54 -0000
@@ -655,6 +655,7 @@ 			}
 		}
 	}
 
+#if 0
 	/*
 	 * Severe hack to avoid deadlocks with the buffer cache
 	 */
@@ -664,6 +665,7 @@ 
 		vm_page_io_start(mt);
 		vm_page_wakeup(mt);
 	}
+#endif
 
 	/*
 	 * pageouts are already clustered, use IO_ASYNC to force a bawrite()
@@ -703,10 +705,13 @@ 			    "vnode_pager_putpages: residual I
 			    auio.uio_resid, (u_long)m[0]->pindex);
 	}
 	for (i = 0; i < ncount; i++) {
+#if 0
 		vm_page_t mt = m[i];
+#endif
 
 		rtvals[i] = VM_PAGER_OK;
 
+#if 0
 		/*
 		 * Severe hack to avoid deadlocks with the buffer cache
 		 */
@@ -714,6 +719,7 @@ 		while (vm_page_sleep_busy(mt, FALSE, "
 			;
 		vm_page_busy(mt);
 		vm_page_io_finish(mt);
+#endif
 	}
 	return rtvals[0];
 }



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