summaryrefslogtreecommitdiffstats
path: root/sys/ufs
diff options
context:
space:
mode:
authoriedowse <iedowse@FreeBSD.org>2002-05-18 18:51:14 +0000
committeriedowse <iedowse@FreeBSD.org>2002-05-18 18:51:14 +0000
commit794dddf9bfa2b99fab7b804c08a1f8b408d15f90 (patch)
tree7c73ff16d8d10d602dd6c505b6adf926b53641d3 /sys/ufs
parent443fe800743f13bf2685697f7b8d0523fec41681 (diff)
downloadFreeBSD-src-794dddf9bfa2b99fab7b804c08a1f8b408d15f90.zip
FreeBSD-src-794dddf9bfa2b99fab7b804c08a1f8b408d15f90.tar.gz
Remove um_i_effnlink_valid, i_spare[] and the ufsmount_u and inode_u
unions, since these were only necessary when ext2fs used ufs code. Reviewed by: mckusick
Diffstat (limited to 'sys/ufs')
-rw-r--r--sys/ufs/ffs/ffs_vfsops.c1
-rw-r--r--sys/ufs/ifs/ifs_vnops.c3
-rw-r--r--sys/ufs/ufs/inode.h8
-rw-r--r--sys/ufs/ufs/ufs_vfsops.c6
-rw-r--r--sys/ufs/ufs/ufs_vnops.c7
-rw-r--r--sys/ufs/ufs/ufsmount.h9
6 files changed, 7 insertions, 27 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c
index f1dfc48..5ab4457 100644
--- a/sys/ufs/ffs/ffs_vfsops.c
+++ b/sys/ufs/ffs/ffs_vfsops.c
@@ -662,7 +662,6 @@ ffs_mountfs(devvp, mp, td, malloctype)
}
ump = malloc(sizeof *ump, M_UFSMNT, M_WAITOK | M_ZERO);
ump->um_malloctype = malloctype;
- ump->um_i_effnlink_valid = 1;
ump->um_fs = malloc((u_long)fs->fs_sbsize, M_UFSMNT,
M_WAITOK);
ump->um_blkatoff = ffs_blkatoff;
diff --git a/sys/ufs/ifs/ifs_vnops.c b/sys/ufs/ifs/ifs_vnops.c
index fa2b7f0..7c09062 100644
--- a/sys/ufs/ifs/ifs_vnops.c
+++ b/sys/ufs/ifs/ifs_vnops.c
@@ -177,8 +177,7 @@ ifs_getattr(ap)
vap->va_fsid = dev2udev(ip->i_dev);
vap->va_fileid = ip->i_number;
vap->va_mode = ip->i_mode & ~IFMT;
- vap->va_nlink = VFSTOUFS(vp->v_mount)->um_i_effnlink_valid ?
- ip->i_effnlink : ip->i_nlink;
+ vap->va_nlink = ip->i_effnlink;
vap->va_uid = ip->i_uid;
vap->va_gid = ip->i_gid;
vap->va_rdev = ip->i_rdev;
diff --git a/sys/ufs/ufs/inode.h b/sys/ufs/ufs/inode.h
index b18f431..5a327c8 100644
--- a/sys/ufs/ufs/inode.h
+++ b/sys/ufs/ufs/inode.h
@@ -75,12 +75,7 @@ struct inode {
ino_t i_number; /* The identity of the inode. */
int i_effnlink; /* i_nlink when I/O completes */
- union { /* Associated filesystem. */
- struct fs *fs; /* FFS */
- struct ext2_sb_info *e2fs; /* EXT2FS */
- } inode_u;
-#define i_fs inode_u.fs
-#define i_e2fs inode_u.e2fs
+ struct fs *i_fs; /* Associated filesystem superblock. */
struct dquot *i_dquot[MAXQUOTAS]; /* Dquot structures. */
u_quad_t i_modrev; /* Revision level for NFS lease. */
struct lockf *i_lockf;/* Head of byte-level lock list. */
@@ -93,7 +88,6 @@ struct inode {
doff_t i_offset; /* Offset of free space in directory. */
ino_t i_ino; /* Inode number of found directory. */
u_int32_t i_reclen; /* Size of found directory entry. */
- u_int32_t i_spare[3]; /* XXX actually non-spare (for ext2fs). */
struct dirhash *i_dirhash; /* Hashing for large directories */
/*
diff --git a/sys/ufs/ufs/ufs_vfsops.c b/sys/ufs/ufs/ufs_vfsops.c
index 625c21d..59e2390 100644
--- a/sys/ufs/ufs/ufs_vfsops.c
+++ b/sys/ufs/ufs/ufs_vfsops.c
@@ -205,10 +205,8 @@ ufs_fhtovp(mp, ufhp, vpp)
return (error);
}
ip = VTOI(nvp);
- if (ip->i_mode == 0 ||
- ip->i_gen != ufhp->ufid_gen ||
- (VFSTOUFS(mp)->um_i_effnlink_valid ? ip->i_effnlink :
- ip->i_nlink) <= 0) {
+ if (ip->i_mode == 0 || ip->i_gen != ufhp->ufid_gen ||
+ ip->i_effnlink <= 0) {
vput(nvp);
*vpp = NULLVP;
return (ESTALE);
diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c
index 17031f3..19d785a 100644
--- a/sys/ufs/ufs/ufs_vnops.c
+++ b/sys/ufs/ufs/ufs_vnops.c
@@ -310,9 +310,7 @@ ufs_close(ap)
* XXX - EAGAIN is returned to prevent vn_close from
* repeating the vrele operation.
*/
- if (vp->v_type == VREG &&
- (VFSTOUFS(vp->v_mount)->um_i_effnlink_valid ?
- VTOI(vp)->i_effnlink : VTOI(vp)->i_nlink) == 0) {
+ if (vp->v_type == VREG && VTOI(vp)->i_effnlink == 0) {
(void) vn_start_write(vp, &mp, V_WAIT);
vrele(vp);
vn_finished_write(mp);
@@ -418,8 +416,7 @@ ufs_getattr(ap)
vap->va_fsid = dev2udev(ip->i_dev);
vap->va_fileid = ip->i_number;
vap->va_mode = ip->i_mode & ~IFMT;
- vap->va_nlink = VFSTOUFS(vp->v_mount)->um_i_effnlink_valid ?
- ip->i_effnlink : ip->i_nlink;
+ vap->va_nlink = ip->i_effnlink;
vap->va_uid = ip->i_uid;
vap->va_gid = ip->i_gid;
vap->va_rdev = ip->i_rdev;
diff --git a/sys/ufs/ufs/ufsmount.h b/sys/ufs/ufs/ufsmount.h
index c53bbb2..dc995b4 100644
--- a/sys/ufs/ufs/ufsmount.h
+++ b/sys/ufs/ufs/ufsmount.h
@@ -66,13 +66,7 @@ struct ufsmount {
dev_t um_dev; /* device mounted */
struct vnode *um_devvp; /* block device mounted vnode */
- union { /* pointer to superblock */
- struct fs *fs; /* FFS */
- struct ext2_sb_info *e2fs; /* EXT2FS */
- } ufsmount_u;
-#define um_fs ufsmount_u.fs
-#define um_e2fs ufsmount_u.e2fs
-#define um_e2fsb ufsmount_u.e2fs->s_es
+ struct fs *um_fs; /* pointer to superblock */
struct vnode *um_quotas[MAXQUOTAS]; /* pointer to quota files */
struct ucred *um_cred[MAXQUOTAS]; /* quota file access cred */
@@ -85,7 +79,6 @@ struct ufsmount {
char um_qflags[MAXQUOTAS]; /* quota specific flags */
int64_t um_savedmaxfilesize; /* XXX - limit maxfilesize */
struct malloc_type *um_malloctype; /* The inodes malloctype */
- int um_i_effnlink_valid; /* i_effnlink valid? */
int (*um_balloc)(struct vnode *, off_t, int, struct ucred *, int, struct buf **);
int (*um_blkatoff)(struct vnode *, off_t, char **, struct buf **);
int (*um_truncate)(struct vnode *, off_t, int, struct ucred *, struct thread *);
OpenPOWER on IntegriCloud