cvs commit: src/sys/ufs/ffs ffs_alloc.c

Don Lewis truckman at FreeBSD.org
Sat Oct 8 13:04:28 PDT 2005


truckman    2005-10-08 20:04:28 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_5)
    sys/ufs/ffs          ffs_alloc.c 
  Log:
  MFC ffs_alloc.c 1.135 - clear i_flag field in recycled inodes
  
  The IN_HASHED bit should not be cleared here in RELENG_5.
  
  Original commit message:
    truckman    2005-10-03 21:57:43 UTC
  
      FreeBSD src repository
  
      Modified files:
        sys/ufs/ffs          ffs_alloc.c
      Log:
      Initialize the inode i_flag field in ffs_valloc() to clean up any
      stale flag bits left over from before the inode was recycled.
  
      Without this change, a leftover IN_SPACECOUNTED flag could prevent
      softdep_freefile() and softdep_releasefile() from incrementing
      fs_pendinginodes.  Because handle_workitem_freefile() unconditionally
      decrements fs_pendinginodes, a negative value could be reported at
      file system unmount time with a message like:
              unmount pending error: blocks 0 files -3
      The pending block count in fs_pendingblocks could also be negative
      for similar reasons.  These errors can cause the data returned by
      statfs() to be slightly incorrect.  Some other cleanup code in
      softdep_releasefile() could also be incorrectly bypassed.
  
      MFC after:      3 days
  
      Revision  Changes    Path
      1.135     +1 -0      src/sys/ufs/ffs/ffs_alloc.c
  
  Revision   Changes    Path
  1.123.2.5  +1 -0      src/sys/ufs/ffs/ffs_alloc.c


More information about the cvs-all mailing list