Retire opt_ffs_broken_fixme.h.

Instead of directly calling ffs_snapgone(), use UFS_SNAPGONE() with
usual layering.

Requested by:	bde
MFC after:	1 week
This commit is contained in:
Konstantin Belousov 2011-03-20 21:05:09 +00:00
parent 2908f971d7
commit 16b1f68d8c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=219804
5 changed files with 7 additions and 8 deletions

View File

@ -200,6 +200,7 @@ CD9660 opt_dontuse.h
CODA opt_dontuse.h
EXT2FS opt_dontuse.h
FDESCFS opt_dontuse.h
FFS opt_dontuse.h
HPFS opt_dontuse.h
MSDOSFS opt_dontuse.h
NTFS opt_dontuse.h
@ -217,9 +218,6 @@ UNIONFS opt_dontuse.h
# Pseudofs debugging
PSEUDOFS_TRACE opt_pseudofs.h
# Broken - ffs_snapshot() dependency from ufs_lookup() :-(
FFS opt_ffs_broken_fixme.h
# In-kernel GSS-API
KGSSAPI opt_kgssapi.h
KGSSAPI_DEBUG opt_kgssapi.h

View File

@ -3,8 +3,7 @@
.PATH: ${.CURDIR}/../../ufs/ufs ${.CURDIR}/../../ufs/ffs
KMOD= ufs
SRCS= opt_ddb.h opt_directio.h opt_ffs.h opt_ffs_broken_fixme.h \
opt_quota.h opt_suiddir.h opt_ufs.h \
SRCS= opt_ddb.h opt_directio.h opt_ffs.h opt_quota.h opt_suiddir.h opt_ufs.h \
vnode_if.h ufs_acl.c ufs_bmap.c ufs_dirhash.c ufs_extattr.c \
ufs_gjournal.c ufs_inode.c ufs_lookup.c ufs_quota.c ufs_vfsops.c \
ufs_vnops.c ffs_alloc.c ffs_balloc.c ffs_inode.c ffs_snapshot.c \

View File

@ -797,6 +797,7 @@ ffs_mountfs(devvp, mp, td)
ump->um_vfree = ffs_vfree;
ump->um_ifree = ffs_ifree;
ump->um_rdonly = ffs_rdonly;
ump->um_snapgone = ffs_snapgone;
mtx_init(UFS_MTX(ump), "FFS", "FFS Lock", MTX_DEF);
bcopy(bp->b_data, ump->um_fs, (u_int)fs->fs_sbsize);
if (fs->fs_sbsize < SBLOCKSIZE)

View File

@ -37,7 +37,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
#include "opt_ffs_broken_fixme.h"
#include "opt_ufs.h"
#include "opt_quota.h"
@ -1253,7 +1252,7 @@ ufs_dirremove(dvp, ip, flags, isrmdir)
* when last open reference goes away.
*/
if (ip != 0 && (ip->i_flags & SF_SNAPSHOT) != 0 && ip->i_effnlink == 0)
ffs_snapgone(ip);
UFS_SNAPGONE(ip);
return (error);
}
@ -1316,7 +1315,7 @@ ufs_dirrewrite(dp, oip, newinum, newtype, isrmdir)
* when last open reference goes away.
*/
if ((oip->i_flags & SF_SNAPSHOT) != 0 && oip->i_effnlink == 0)
ffs_snapgone(oip);
UFS_SNAPGONE(oip);
return (error);
}

View File

@ -104,6 +104,7 @@ struct ufsmount {
int (*um_vfree)(struct vnode *, ino_t, int);
void (*um_ifree)(struct ufsmount *, struct inode *);
int (*um_rdonly)(struct inode *);
void (*um_snapgone)(struct inode *);
};
#define UFS_BALLOC(aa, bb, cc, dd, ee, ff) VFSTOUFS((aa)->v_mount)->um_balloc(aa, bb, cc, dd, ee, ff)
@ -114,6 +115,7 @@ struct ufsmount {
#define UFS_VFREE(aa, bb, cc) VFSTOUFS((aa)->v_mount)->um_vfree(aa, bb, cc)
#define UFS_IFREE(aa, bb) ((aa)->um_ifree(aa, bb))
#define UFS_RDONLY(aa) ((aa)->i_ump->um_rdonly(aa))
#define UFS_SNAPGONE(aa) ((aa)->i_ump->um_snapgone(aa))
#define UFS_LOCK(aa) mtx_lock(&(aa)->um_lock)
#define UFS_UNLOCK(aa) mtx_unlock(&(aa)->um_lock)