Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Feb 2000 15:27:55 -0800
From:      David Greenman <dg@root.com>
To:        Matt Dillon <dillon@FreeBSD.org>
Cc:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/ufs/ffs ffs_balloc.c 
Message-ID:  <200002242327.PAA10328@implode.root.com>
In-Reply-To: Your message of "Thu, 24 Feb 2000 12:43:22 PST." <200002242043.MAA17349@freefall.freebsd.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
   Excellent troubleshooting on this, BTW. Excellent work!


-DG

David Greenman
Co-founder/Principal Architect, The FreeBSD Project - http://www.freebsd.org
Creator of high-performance Internet servers - http://www.terasolutions.com
Pave the road of life with opportunities.

>dillon      2000/02/24 12:43:22 PST
>
>  Modified files:
>    sys/ufs/ffs          ffs_balloc.c 
>  Log:
>      Fix a 'freeing free block' panic in UFS.  The problem occurs when the
>      filesystem fills up.  If the first indirect block exists and FFS is able
>      to allocate deeper indirect blocks, but is not able to allocate the
>      data block, FFS improperly unwinds the indirect blocks and leaves a
>      block pointer hanging to a freed block.  This will cause a panic later
>      when the file is removed.  The solution is to properly account for the
>      first block-pointer-to-an-indirect-block we had to create in a balloc
>      operation and then unwind it if a failure occurs.
>  
>  Detective work by: Ian Dowse <iedowse@maths.tcd.ie>
>  Reviewed by: mckusick, Ian Dowse <iedowse@maths.tcd.ie>
>  Approved by: jkh
>  
>  Revision  Changes    Path
>  1.26      +25 -2     src/sys/ufs/ffs/ffs_balloc.c
>
>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200002242327.PAA10328>