tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: amd64 panics w/XEN_DOM0, not GENERIC
On Wed, Aug 20, 2008 at 11:03:47PM +0200, Manuel Bouyer wrote:
> Could you try a GENERIC+DEBUG+DIAGNOSTIC kernel ? XEN3_DOM0 has
> options DEBUG
> options DIAGNOSTIC
> while GENERIC doesn't.
Also please try a XEN3_DOM0 kernel with the attached patch. It should give more
details on the source of the problem (the failing function should now show
up in the stack trace).
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Index: kern_physio.c
===================================================================
RCS file: /cvsroot/src/sys/kern/kern_physio.c,v
retrieving revision 1.87
diff -u -p -u -r1.87 kern_physio.c
--- kern_physio.c 15 Feb 2008 13:46:04 -0000 1.87
+++ kern_physio.c 20 Aug 2008 21:08:35 -0000
@@ -210,10 +210,13 @@ physio_biodone(struct buf *bp)
#if defined(DIAGNOSTIC)
struct physio_stat *ps = bp->b_private;
size_t todo = bp->b_bufsize;
+ size_t done = bp->b_bcount - bp->b_resid;
KASSERT(ps->ps_running > 0);
KASSERT(bp->b_bcount <= todo);
KASSERT(bp->b_resid <= bp->b_bcount);
+ if (done == todo)
+ KASSERT(bp->b_error == 0);
#endif /* defined(DIAGNOSTIC) */
workqueue_enqueue(physio_workqueue, &bp->b_work, NULL);
Home |
Main Index |
Thread Index |
Old Index