summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_extattr.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1999-11-20 10:00:46 +0000
committerphk <phk@FreeBSD.org>1999-11-20 10:00:46 +0000
commit1adcecffd93c2f4536a5031426a753b1218ed88a (patch)
treec111db9be70768372eebad9bfc9cbe47bb8a0a9d /sys/kern/vfs_extattr.c
parent5354776cb2ed414ffde1c1fe64dec67336140a07 (diff)
downloadFreeBSD-src-1adcecffd93c2f4536a5031426a753b1218ed88a.zip
FreeBSD-src-1adcecffd93c2f4536a5031426a753b1218ed88a.tar.gz
struct mountlist and struct mount.mnt_list have no business being
a CIRCLEQ. Change them to TAILQ_HEAD and TAILQ_ENTRY respectively. This removes ugly mp != (void*)&mountlist comparisons. Requested by: phk Submitted by: Jake Burkholder jake@checker.org PR: 14967
Diffstat (limited to 'sys/kern/vfs_extattr.c')
-rw-r--r--sys/kern/vfs_extattr.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c
index e0045c1..4d5d394 100644
--- a/sys/kern/vfs_extattr.c
+++ b/sys/kern/vfs_extattr.c
@@ -331,7 +331,7 @@ update:
vp->v_mountedhere = mp;
simple_unlock(&vp->v_interlock);
simple_lock(&mountlist_slock);
- CIRCLEQ_INSERT_TAIL(&mountlist, mp, mnt_list);
+ TAILQ_INSERT_TAIL(&mountlist, mp, mnt_list);
simple_unlock(&mountlist_slock);
checkdirs(vp);
VOP_UNLOCK(vp, 0, p);
@@ -494,7 +494,7 @@ dounmount(mp, flags, p)
wakeup((caddr_t)mp);
return (error);
}
- CIRCLEQ_REMOVE(&mountlist, mp, mnt_list);
+ TAILQ_REMOVE(&mountlist, mp, mnt_list);
if ((coveredvp = mp->mnt_vnodecovered) != NULLVP) {
coveredvp->v_mountedhere = (struct mount *)0;
vrele(coveredvp);
@@ -533,10 +533,9 @@ sync(p, uap)
int asyncflag;
simple_lock(&mountlist_slock);
- mp = CIRCLEQ_FIRST(&mountlist);
- for (; mp != (void *)&mountlist; mp = nmp) {
+ for (mp = TAILQ_FIRST(&mountlist); mp != NULL; mp = nmp) {
if (vfs_busy(mp, LK_NOWAIT, &mountlist_slock, p)) {
- nmp = CIRCLEQ_NEXT(mp, mnt_list);
+ nmp = TAILQ_NEXT(mp, mnt_list);
continue;
}
if ((mp->mnt_flag & MNT_RDONLY) == 0) {
@@ -548,7 +547,7 @@ sync(p, uap)
mp->mnt_flag |= asyncflag;
}
simple_lock(&mountlist_slock);
- nmp = CIRCLEQ_NEXT(mp, mnt_list);
+ nmp = TAILQ_NEXT(mp, mnt_list);
vfs_unbusy(mp, p);
}
simple_unlock(&mountlist_slock);
@@ -718,10 +717,9 @@ getfsstat(p, uap)
sfsp = (caddr_t)SCARG(uap, buf);
count = 0;
simple_lock(&mountlist_slock);
- mp = CIRCLEQ_FIRST(&mountlist);
- for (; mp != (void *)&mountlist; mp = nmp) {
+ for (mp = TAILQ_FIRST(&mountlist); mp != NULL; mp = nmp) {
if (vfs_busy(mp, LK_NOWAIT, &mountlist_slock, p)) {
- nmp = CIRCLEQ_NEXT(mp, mnt_list);
+ nmp = TAILQ_NEXT(mp, mnt_list);
continue;
}
if (sfsp && count < maxcount) {
@@ -735,7 +733,7 @@ getfsstat(p, uap)
(SCARG(uap, flags) & MNT_WAIT)) &&
(error = VFS_STATFS(mp, sp, p))) {
simple_lock(&mountlist_slock);
- nmp = CIRCLEQ_NEXT(mp, mnt_list);
+ nmp = TAILQ_NEXT(mp, mnt_list);
vfs_unbusy(mp, p);
continue;
}
@@ -749,7 +747,7 @@ getfsstat(p, uap)
}
count++;
simple_lock(&mountlist_slock);
- nmp = CIRCLEQ_NEXT(mp, mnt_list);
+ nmp = TAILQ_NEXT(mp, mnt_list);
vfs_unbusy(mp, p);
}
simple_unlock(&mountlist_slock);
OpenPOWER on IntegriCloud