tmpfs_vnops.c (207662) | tmpfs_vnops.c (207719) |
---|---|
1/* $NetBSD: tmpfs_vnops.c,v 1.39 2007/07/23 15:41:01 jmmv Exp $ */ 2 3/*- 4 * Copyright (c) 2005, 2006 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 --- 20 unchanged lines hidden (view full) --- 29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30 * POSSIBILITY OF SUCH DAMAGE. 31 */ 32 33/* 34 * tmpfs vnode interface. 35 */ 36#include <sys/cdefs.h> | 1/* $NetBSD: tmpfs_vnops.c,v 1.39 2007/07/23 15:41:01 jmmv Exp $ */ 2 3/*- 4 * Copyright (c) 2005, 2006 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 --- 20 unchanged lines hidden (view full) --- 29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30 * POSSIBILITY OF SUCH DAMAGE. 31 */ 32 33/* 34 * tmpfs vnode interface. 35 */ 36#include <sys/cdefs.h> |
37__FBSDID("$FreeBSD: head/sys/fs/tmpfs/tmpfs_vnops.c 207662 2010-05-05 16:44:25Z trasz $"); | 37__FBSDID("$FreeBSD: head/sys/fs/tmpfs/tmpfs_vnops.c 207719 2010-05-06 18:43:19Z trasz $"); |
38 39#include <sys/param.h> 40#include <sys/fcntl.h> 41#include <sys/lockf.h> 42#include <sys/namei.h> 43#include <sys/priv.h> 44#include <sys/proc.h> 45#include <sys/sched.h> --- 666 unchanged lines hidden (view full) --- 712} 713 714static int 715tmpfs_write(struct vop_write_args *v) 716{ 717 struct vnode *vp = v->a_vp; 718 struct uio *uio = v->a_uio; 719 int ioflag = v->a_ioflag; | 38 39#include <sys/param.h> 40#include <sys/fcntl.h> 41#include <sys/lockf.h> 42#include <sys/namei.h> 43#include <sys/priv.h> 44#include <sys/proc.h> 45#include <sys/sched.h> --- 666 unchanged lines hidden (view full) --- 712} 713 714static int 715tmpfs_write(struct vop_write_args *v) 716{ 717 struct vnode *vp = v->a_vp; 718 struct uio *uio = v->a_uio; 719 int ioflag = v->a_ioflag; |
720 struct thread *td = uio->uio_td; | |
721 722 boolean_t extended; 723 int error = 0; 724 off_t oldsize; 725 struct tmpfs_node *node; 726 vm_object_t uobj; 727 size_t len; 728 int resid; --- 13 unchanged lines hidden (view full) --- 742 743 if (ioflag & IO_APPEND) 744 uio->uio_offset = node->tn_size; 745 746 if (uio->uio_offset + uio->uio_resid > 747 VFS_TO_TMPFS(vp->v_mount)->tm_maxfilesize) 748 return (EFBIG); 749 | 720 721 boolean_t extended; 722 int error = 0; 723 off_t oldsize; 724 struct tmpfs_node *node; 725 vm_object_t uobj; 726 size_t len; 727 int resid; --- 13 unchanged lines hidden (view full) --- 741 742 if (ioflag & IO_APPEND) 743 uio->uio_offset = node->tn_size; 744 745 if (uio->uio_offset + uio->uio_resid > 746 VFS_TO_TMPFS(vp->v_mount)->tm_maxfilesize) 747 return (EFBIG); 748 |
750 if (vn_rlimit_fsize(vp, uio, td)) | 749 if (vn_rlimit_fsize(vp, uio, uio->uio_td)) |
751 return (EFBIG); 752 753 extended = uio->uio_offset + uio->uio_resid > node->tn_size; 754 if (extended) { 755 error = tmpfs_reg_resize(vp, uio->uio_offset + uio->uio_resid); 756 if (error != 0) 757 goto out; 758 } --- 825 unchanged lines hidden --- | 750 return (EFBIG); 751 752 extended = uio->uio_offset + uio->uio_resid > node->tn_size; 753 if (extended) { 754 error = tmpfs_reg_resize(vp, uio->uio_offset + uio->uio_resid); 755 if (error != 0) 756 goto out; 757 } --- 825 unchanged lines hidden --- |