Sigh. ufs_lookup() calls ffs_snapgone(), meaning that 'options EXT2FS'

without 'options FFS' would fail to link.
This commit is contained in:
peter 2001-08-18 03:08:48 +00:00
parent ef02fc4189
commit 886fd9ad64
2 changed files with 9 additions and 2 deletions

View File

@ -119,8 +119,6 @@ CD9660 opt_dontuse.h
CODA opt_dontuse.h
EXT2FS opt_dontuse.h
FDESCFS opt_dontuse.h
FFS opt_dontuse.h
IFS opt_dontuse.h
LINPROCFS opt_dontuse.h
MSDOSFS opt_dontuse.h
NULLFS opt_dontuse.h
@ -133,6 +131,10 @@ NTFS opt_dontuse.h
HPFS opt_dontuse.h
UNIONFS opt_dontuse.h
# Broken - ffs_snapshot() dependency from ufs_lookup() :-(
FFS opt_ffs_broken_fixme.h
IFS opt_ffs_broken_fixme.h
# These static filesystems has one slightly bogus static dependency in
# sys/i386/i386/autoconf.c. If any of these filesystems are
# statically compiled into the kernel, code for mounting them as root

View File

@ -39,6 +39,7 @@
* $FreeBSD$
*/
#include "opt_ffs_broken_fixme.h"
#include "opt_ufs.h"
#include <sys/param.h>
@ -1059,8 +1060,10 @@ 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);
}
@ -1108,8 +1111,10 @@ ufs_dirrewrite(dp, oip, newinum, newtype, isrmdir)
* 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);
}