tmpfs_subr.c (246e7a2b6494cd991b08ac669ed761ecea0cc98c) tmpfs_subr.c (f40cb1c6456a66669f6c75d92435b1c1b951387f)
1/* $NetBSD: tmpfs_subr.c,v 1.35 2007/07/09 21:10:50 ad Exp $ */
2
3/*-
4 * Copyright (c) 2005 The NetBSD Foundation, Inc.
5 * All rights reserved.
6 *
7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Julio M. Merino Vidal, developed as part of Google's Summer of Code

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

1410 TMPFS_LOCK(tmp);
1411 tmp->tm_pages_used += (newpages - oldpages);
1412 TMPFS_UNLOCK(tmp);
1413
1414 node->tn_size = newsize;
1415 return (0);
1416}
1417
1/* $NetBSD: tmpfs_subr.c,v 1.35 2007/07/09 21:10:50 ad Exp $ */
2
3/*-
4 * Copyright (c) 2005 The NetBSD Foundation, Inc.
5 * All rights reserved.
6 *
7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Julio M. Merino Vidal, developed as part of Google's Summer of Code

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

1410 TMPFS_LOCK(tmp);
1411 tmp->tm_pages_used += (newpages - oldpages);
1412 TMPFS_UNLOCK(tmp);
1413
1414 node->tn_size = newsize;
1415 return (0);
1416}
1417
1418void
1419tmpfs_check_mtime(struct vnode *vp)
1420{
1421 struct tmpfs_node *node;
1422 struct vm_object *obj;
1423
1424 ASSERT_VOP_ELOCKED(vp, "check_mtime");
1425 if (vp->v_type != VREG)
1426 return;
1427 node = VP_TO_TMPFS_NODE(vp);
1428 obj = vp->v_object;
1429 KASSERT((obj->flags & (OBJ_TMPFS_NODE | OBJ_TMPFS)) ==
1430 (OBJ_TMPFS_NODE | OBJ_TMPFS), ("non-tmpfs obj"));
1431 /* unlocked read */
1432 if ((obj->flags & OBJ_TMPFS_DIRTY) != 0) {
1433 VM_OBJECT_WLOCK(obj);
1434 if ((obj->flags & OBJ_TMPFS_DIRTY) != 0) {
1435 obj->flags &= ~OBJ_TMPFS_DIRTY;
1436 node = VP_TO_TMPFS_NODE(vp);
1437 node->tn_status |= TMPFS_NODE_MODIFIED;
1438 }
1439 VM_OBJECT_WUNLOCK(obj);
1440 }
1441}
1442
1418/*
1419 * Change flags of the given vnode.
1420 * Caller should execute tmpfs_update on vp after a successful execution.
1421 * The vnode must be locked on entry and remain locked on exit.
1422 */
1423int
1424tmpfs_chflags(struct vnode *vp, u_long flags, struct ucred *cred,
1425 struct thread *p)

--- 361 unchanged lines hidden ---
1443/*
1444 * Change flags of the given vnode.
1445 * Caller should execute tmpfs_update on vp after a successful execution.
1446 * The vnode must be locked on entry and remain locked on exit.
1447 */
1448int
1449tmpfs_chflags(struct vnode *vp, u_long flags, struct ucred *cred,
1450 struct thread *p)

--- 361 unchanged lines hidden ---