Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Mar 2011 11:23:12 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r219712 - head/sys/ufs/ufs
Message-ID:  <201103171123.p2HBNCGh025820@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Thu Mar 17 11:23:12 2011
New Revision: 219712
URL: http://svn.freebsd.org/changeset/base/219712

Log:
  Remove the #if defined(FFS) || defined(IFS) braces around the calls to
  ffs_snapgone(). ufs.ko module is not build with FFS define, causing
  snapshot inode number slots in superblock never be freed, as well as a
  reference on the snapshot vnode.
  
  IFS was removed several years ago, and UFS/FFS separation was not
  maintained for real.
  
  Reported, analyzed and tested by:	Yamagi Burmeister <lists yamagi org>
  MFC after:	3 days

Modified:
  head/sys/ufs/ufs/ufs_lookup.c

Modified: head/sys/ufs/ufs/ufs_lookup.c
==============================================================================
--- head/sys/ufs/ufs/ufs_lookup.c	Thu Mar 17 09:44:33 2011	(r219711)
+++ head/sys/ufs/ufs/ufs_lookup.c	Thu Mar 17 11:23:12 2011	(r219712)
@@ -1252,10 +1252,8 @@ out:
 	 * drop its snapshot reference so that it will be reclaimed
 	 * when last open reference goes away.
 	 */
-#if defined(FFS) || defined(IFS)
 	if (ip != 0 && (ip->i_flags & SF_SNAPSHOT) != 0 && ip->i_effnlink == 0)
 		ffs_snapgone(ip);
-#endif
 	return (error);
 }
 
@@ -1317,10 +1315,8 @@ ufs_dirrewrite(dp, oip, newinum, newtype
 	 * drop its snapshot reference so that it will be reclaimed
 	 * when last open reference goes away.
 	 */
-#if defined(FFS) || defined(IFS)
 	if ((oip->i_flags & SF_SNAPSHOT) != 0 && oip->i_effnlink == 0)
 		ffs_snapgone(oip);
-#endif
 	return (error);
 }
 



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