Deleted Added
full compact
nfs_subs.c (175294) nfs_subs.c (175486)
1/*-
2 * Copyright (c) 1989, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Rick Macklem at The University of Guelph.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 19 unchanged lines hidden (view full) ---

28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 *
32 * @(#)nfs_subs.c 8.8 (Berkeley) 5/22/95
33 */
34
35#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 1989, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Rick Macklem at The University of Guelph.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 19 unchanged lines hidden (view full) ---

28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 *
32 * @(#)nfs_subs.c 8.8 (Berkeley) 5/22/95
33 */
34
35#include <sys/cdefs.h>
36__FBSDID("$FreeBSD: head/sys/nfsclient/nfs_subs.c 175294 2008-01-13 14:44:15Z attilio $");
36__FBSDID("$FreeBSD: head/sys/nfsclient/nfs_subs.c 175486 2008-01-19 17:36:23Z attilio $");
37
38/*
39 * These functions support the macros and help fiddle mbuf chains for
40 * the nfs op functions. They do things like create the rpc header and
41 * copy data between mbuf chains and uio lists.
42 */
43
44#include <sys/param.h>

--- 868 unchanged lines hidden (view full) ---

913 MNT_VNODE_FOREACH(vp, mp, nvp) {
914 VI_LOCK(vp);
915 if (vp->v_iflag & VI_DOOMED) {
916 VI_UNLOCK(vp);
917 continue;
918 }
919 MNT_IUNLOCK(mp);
920 TAILQ_FOREACH_SAFE(bp, &vp->v_bufobj.bo_dirty.bv_hd, b_bobufs, nbp) {
37
38/*
39 * These functions support the macros and help fiddle mbuf chains for
40 * the nfs op functions. They do things like create the rpc header and
41 * copy data between mbuf chains and uio lists.
42 */
43
44#include <sys/param.h>

--- 868 unchanged lines hidden (view full) ---

913 MNT_VNODE_FOREACH(vp, mp, nvp) {
914 VI_LOCK(vp);
915 if (vp->v_iflag & VI_DOOMED) {
916 VI_UNLOCK(vp);
917 continue;
918 }
919 MNT_IUNLOCK(mp);
920 TAILQ_FOREACH_SAFE(bp, &vp->v_bufobj.bo_dirty.bv_hd, b_bobufs, nbp) {
921 if (BUF_REFCNT(bp) == 0 &&
921 if (!BUF_ISLOCKED(bp) &&
922 (bp->b_flags & (B_DELWRI | B_NEEDCOMMIT))
923 == (B_DELWRI | B_NEEDCOMMIT))
924 bp->b_flags &= ~(B_NEEDCOMMIT | B_CLUSTEROK);
925 }
926 VI_UNLOCK(vp);
927 MNT_ILOCK(mp);
928 }
929 MNT_IUNLOCK(mp);

--- 258 unchanged lines hidden ---
922 (bp->b_flags & (B_DELWRI | B_NEEDCOMMIT))
923 == (B_DELWRI | B_NEEDCOMMIT))
924 bp->b_flags &= ~(B_NEEDCOMMIT | B_CLUSTEROK);
925 }
926 VI_UNLOCK(vp);
927 MNT_ILOCK(mp);
928 }
929 MNT_IUNLOCK(mp);

--- 258 unchanged lines hidden ---