Author: mckusick
Date: Mon Feb 13 01:33:39 2012
New Revision: 231572
URL: http://svn.freebsd.org/changeset/base/231572

Log:
  Missing conditions in checking whether an inode has been written.
  
  Found and tested by: Peter Holm
  MFC after:           2 weeks (to 9 only)

Modified:
  head/sys/ufs/ffs/ffs_softdep.c

Modified: head/sys/ufs/ffs/ffs_softdep.c
==============================================================================
--- head/sys/ufs/ffs/ffs_softdep.c      Mon Feb 13 00:28:41 2012        
(r231571)
+++ head/sys/ufs/ffs/ffs_softdep.c      Mon Feb 13 01:33:39 2012        
(r231572)
@@ -7161,13 +7161,16 @@ check_inode_unwritten(inodedep)
        mtx_assert(&lk, MA_OWNED);
 
        if ((inodedep->id_state & (DEPCOMPLETE | UNLINKED)) != 0 ||
+           !LIST_EMPTY(&inodedep->id_dirremhd) ||
            !LIST_EMPTY(&inodedep->id_pendinghd) ||
            !LIST_EMPTY(&inodedep->id_bufwait) ||
            !LIST_EMPTY(&inodedep->id_inowait) ||
+           !TAILQ_EMPTY(&inodedep->id_inoreflst) ||
            !TAILQ_EMPTY(&inodedep->id_inoupdt) ||
            !TAILQ_EMPTY(&inodedep->id_newinoupdt) ||
            !TAILQ_EMPTY(&inodedep->id_extupdt) ||
            !TAILQ_EMPTY(&inodedep->id_newextupdt) ||
+           !TAILQ_EMPTY(&inodedep->id_freeblklst) ||
            inodedep->id_mkdiradd != NULL || 
            inodedep->id_nlinkdelta != 0)
                return (0);
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to