Module Name: src Committed By: uebayasi Date: Sun Sep 26 06:35:33 UTC 2010
Modified Files: src/sys/ufs/ffs [uebayasi-xip]: ffs_vfsops.c Log Message: ffs_vget: Mark XIP only for VREG vnodes. To generate a diff of this commit: cvs rdiff -u -r1.257.2.8 -r1.257.2.9 src/sys/ufs/ffs/ffs_vfsops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/ufs/ffs/ffs_vfsops.c diff -u src/sys/ufs/ffs/ffs_vfsops.c:1.257.2.8 src/sys/ufs/ffs/ffs_vfsops.c:1.257.2.9 --- src/sys/ufs/ffs/ffs_vfsops.c:1.257.2.8 Tue Aug 17 06:48:10 2010 +++ src/sys/ufs/ffs/ffs_vfsops.c Sun Sep 26 06:35:32 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: ffs_vfsops.c,v 1.257.2.8 2010/08/17 06:48:10 uebayasi Exp $ */ +/* $NetBSD: ffs_vfsops.c,v 1.257.2.9 2010/09/26 06:35:32 uebayasi Exp $ */ /*- * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc. @@ -61,7 +61,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ffs_vfsops.c,v 1.257.2.8 2010/08/17 06:48:10 uebayasi Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ffs_vfsops.c,v 1.257.2.9 2010/09/26 06:35:32 uebayasi Exp $"); #if defined(_KERNEL_OPT) #include "opt_ffs.h" @@ -1771,12 +1771,6 @@ vp->v_vflag |= VV_LOCKSWORK; -#ifdef XIP - if ((vp->v_mount->mnt_iflag & IMNT_XIP) != 0) { - vp->v_vflag |= VV_XIP; - } -#endif - /* * XXX MFS ends up here, too, to allocate an inode. Should we * XXX create another pool for MFS inodes? @@ -1842,6 +1836,13 @@ ufs_vinit(mp, ffs_specop_p, ffs_fifoop_p, &vp); +#ifdef XIP + if ((vp->v_mount->mnt_iflag & IMNT_XIP) != 0 && + vp->v_type == VREG) { + vp->v_vflag |= VV_XIP; + } +#endif + /* * Finish inode initialization now that aliasing has been resolved. */