NetBSD-Bugs archive

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

Re: bin/43336: fsck wapbl assertion failure after crash

The following reply was made to PR bin/43336; it has been noted by GNATS.

From: David Holland <>
Subject: Re: bin/43336: fsck wapbl assertion failure after crash
Date: Thu, 27 May 2010 07:24:01 +0000

 On Fri, May 21, 2010 at 04:05:00PM +0000, Hauke Fath wrote:
  > <>
 For the record, the transcript is:
    # fsck -f
    ** /dev/rwd0a
    assertion "wr->wr_blkhashcnt > 0" failed: file 
"/public/netbsd-5/sys/kern/vfs_wapbl.c", line 2156, function 
    fsck: /dev/rwd0a: Abort trap
 Examining the code I don't see any way this can happen (besides memory
 corruption) except by having more than 2^31 items in the hash
 table. This seems improbable but I guess one never knows. How big is
 your wd0a?
 Can you patch your copy to print the value of wr_blkhashcnt before
 crashing? It would be interesting to know if it's 0 or if it's -2^31
 or thereabouts.
  >     Manuel Bouyer suggested changing the assertion into a warning,
  >     so that fsck can clean up the log.
 Given that it's an in-memory construct and the assertion checks a
 fairly simple invariant of a data structure, failure suggests that
 something pretty bad is wrong; continuing might well just cause fsck
 to munge the volume. So I'm not sure this is a good idea.
 David A. Holland

Home | Main Index | Thread Index | Old Index