Module Name:    src
Committed By:   dholland
Date:           Fri Jul 25 08:20:53 UTC 2014

Modified Files:
        src/sys/coda: coda_vnops.c
        src/sys/fs/adosfs: advnops.c
        src/sys/fs/cd9660: cd9660_vnops.c
        src/sys/fs/efs: efs_vnops.c
        src/sys/fs/filecorefs: filecore_vnops.c
        src/sys/fs/hfs: hfs_vnops.c
        src/sys/fs/msdosfs: msdosfs_vnops.c
        src/sys/fs/nilfs: nilfs_vnops.c
        src/sys/fs/ntfs: ntfs_vnops.c
        src/sys/fs/ptyfs: ptyfs_vnops.c
        src/sys/fs/puffs: puffs_vnops.c
        src/sys/fs/smbfs: smbfs_vnops.c
        src/sys/fs/sysvbfs: sysvbfs.c
        src/sys/fs/tmpfs: tmpfs_fifoops.c tmpfs_specops.c tmpfs_vnops.c
        src/sys/fs/udf: udf_vnops.c
        src/sys/fs/union: union_vnops.c
        src/sys/fs/unionfs: unionfs_vnops.c
        src/sys/fs/v7fs: v7fs_extern.c
        src/sys/miscfs/deadfs: dead_vnops.c
        src/sys/miscfs/fdesc: fdesc_vnops.c
        src/sys/miscfs/fifofs: fifo_vnops.c
        src/sys/miscfs/kernfs: kernfs_vnops.c
        src/sys/miscfs/procfs: procfs_vnops.c
        src/sys/miscfs/specfs: spec_vnops.c
        src/sys/nfs: nfs_vnops.c
        src/sys/ufs/chfs: chfs_vnops.c
        src/sys/ufs/ext2fs: ext2fs_vnops.c
        src/sys/ufs/ffs: ffs_vnops.c
        src/sys/ufs/lfs: lfs_vnops.c
        src/sys/ufs/mfs: mfs_vnops.c

Log Message:
Add VOP_FALLOCATE and VOP_FDISCARD to every vnode ops table I can
find.

The filesystem ones all call genfs_eopnotsupp - right now I am only
implementing the plumbing and we can implement fallocate and/or
fdiscard for files later.

The device ones call spec_fallocate (which is also genfs_eopnotsupp)
and spec_fdiscard, which dispatches to the device-level op.

The fifo ones all call vn_fifo_bypass, which also ends up being
EOPNOTSUPP.


To generate a diff of this commit:
cvs rdiff -u -r1.96 -r1.97 src/sys/coda/coda_vnops.c
cvs rdiff -u -r1.43 -r1.44 src/sys/fs/adosfs/advnops.c
cvs rdiff -u -r1.48 -r1.49 src/sys/fs/cd9660/cd9660_vnops.c
cvs rdiff -u -r1.31 -r1.32 src/sys/fs/efs/efs_vnops.c
cvs rdiff -u -r1.41 -r1.42 src/sys/fs/filecorefs/filecore_vnops.c
cvs rdiff -u -r1.29 -r1.30 src/sys/fs/hfs/hfs_vnops.c
cvs rdiff -u -r1.90 -r1.91 src/sys/fs/msdosfs/msdosfs_vnops.c
cvs rdiff -u -r1.27 -r1.28 src/sys/fs/nilfs/nilfs_vnops.c
cvs rdiff -u -r1.56 -r1.57 src/sys/fs/ntfs/ntfs_vnops.c
cvs rdiff -u -r1.46 -r1.47 src/sys/fs/ptyfs/ptyfs_vnops.c
cvs rdiff -u -r1.181 -r1.182 src/sys/fs/puffs/puffs_vnops.c
cvs rdiff -u -r1.90 -r1.91 src/sys/fs/smbfs/smbfs_vnops.c
cvs rdiff -u -r1.13 -r1.14 src/sys/fs/sysvbfs/sysvbfs.c
cvs rdiff -u -r1.10 -r1.11 src/sys/fs/tmpfs/tmpfs_fifoops.c
cvs rdiff -u -r1.11 -r1.12 src/sys/fs/tmpfs/tmpfs_specops.c
cvs rdiff -u -r1.119 -r1.120 src/sys/fs/tmpfs/tmpfs_vnops.c
cvs rdiff -u -r1.91 -r1.92 src/sys/fs/udf/udf_vnops.c
cvs rdiff -u -r1.61 -r1.62 src/sys/fs/union/union_vnops.c
cvs rdiff -u -r1.7 -r1.8 src/sys/fs/unionfs/unionfs_vnops.c
cvs rdiff -u -r1.2 -r1.3 src/sys/fs/v7fs/v7fs_extern.c
cvs rdiff -u -r1.56 -r1.57 src/sys/miscfs/deadfs/dead_vnops.c
cvs rdiff -u -r1.120 -r1.121 src/sys/miscfs/fdesc/fdesc_vnops.c
cvs rdiff -u -r1.75 -r1.76 src/sys/miscfs/fifofs/fifo_vnops.c
cvs rdiff -u -r1.153 -r1.154 src/sys/miscfs/kernfs/kernfs_vnops.c
cvs rdiff -u -r1.189 -r1.190 src/sys/miscfs/procfs/procfs_vnops.c
cvs rdiff -u -r1.144 -r1.145 src/sys/miscfs/specfs/spec_vnops.c
cvs rdiff -u -r1.305 -r1.306 src/sys/nfs/nfs_vnops.c
cvs rdiff -u -r1.21 -r1.22 src/sys/ufs/chfs/chfs_vnops.c
cvs rdiff -u -r1.112 -r1.113 src/sys/ufs/ext2fs/ext2fs_vnops.c
cvs rdiff -u -r1.124 -r1.125 src/sys/ufs/ffs/ffs_vnops.c
cvs rdiff -u -r1.268 -r1.269 src/sys/ufs/lfs/lfs_vnops.c
cvs rdiff -u -r1.54 -r1.55 src/sys/ufs/mfs/mfs_vnops.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/coda/coda_vnops.c
diff -u src/sys/coda/coda_vnops.c:1.96 src/sys/coda/coda_vnops.c:1.97
--- src/sys/coda/coda_vnops.c:1.96	Thu Mar 20 06:48:54 2014
+++ src/sys/coda/coda_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: coda_vnops.c,v 1.96 2014/03/20 06:48:54 skrll Exp $	*/
+/*	$NetBSD: coda_vnops.c,v 1.97 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*
  *
@@ -46,7 +46,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: coda_vnops.c,v 1.96 2014/03/20 06:48:54 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: coda_vnops.c,v 1.97 2014/07/25 08:20:51 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -109,6 +109,8 @@ const struct vnodeopv_entry_desc coda_vn
     { &vop_setattr_desc, coda_setattr },	/* setattr */
     { &vop_read_desc, coda_read },		/* read */
     { &vop_write_desc, coda_write },		/* write */
+    { &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+    { &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
     { &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
     { &vop_ioctl_desc, coda_ioctl },		/* ioctl */
     { &vop_mmap_desc, genfs_mmap },		/* mmap */

Index: src/sys/fs/adosfs/advnops.c
diff -u src/sys/fs/adosfs/advnops.c:1.43 src/sys/fs/adosfs/advnops.c:1.44
--- src/sys/fs/adosfs/advnops.c:1.43	Thu Jan 23 10:13:56 2014
+++ src/sys/fs/adosfs/advnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: advnops.c,v 1.43 2014/01/23 10:13:56 hannken Exp $	*/
+/*	$NetBSD: advnops.c,v 1.44 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*
  * Copyright (c) 1994 Christian E. Hopps
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: advnops.c,v 1.43 2014/01/23 10:13:56 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: advnops.c,v 1.44 2014/07/25 08:20:51 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -105,6 +105,8 @@ const struct vnodeopv_entry_desc adosfs_
 	{ &vop_setattr_desc, adosfs_setattr },		/* setattr */
 	{ &vop_read_desc, adosfs_read },		/* read */
 	{ &vop_write_desc, adosfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, adosfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, adosfs_ioctl },		/* ioctl */
 	{ &vop_poll_desc, adosfs_poll },		/* poll */

Index: src/sys/fs/cd9660/cd9660_vnops.c
diff -u src/sys/fs/cd9660/cd9660_vnops.c:1.48 src/sys/fs/cd9660/cd9660_vnops.c:1.49
--- src/sys/fs/cd9660/cd9660_vnops.c:1.48	Sat Jun 14 07:39:29 2014
+++ src/sys/fs/cd9660/cd9660_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: cd9660_vnops.c,v 1.48 2014/06/14 07:39:29 hannken Exp $	*/
+/*	$NetBSD: cd9660_vnops.c,v 1.49 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1994
@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cd9660_vnops.c,v 1.48 2014/06/14 07:39:29 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cd9660_vnops.c,v 1.49 2014/07/25 08:20:51 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -859,6 +859,8 @@ const struct vnodeopv_entry_desc cd9660_
 	{ &vop_setattr_desc, cd9660_setattr },		/* setattr */
 	{ &vop_read_desc, cd9660_read },		/* read */
 	{ &vop_write_desc, cd9660_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, cd9660_ioctl },		/* ioctl */
 	{ &vop_poll_desc, cd9660_poll },		/* poll */
@@ -909,6 +911,8 @@ const struct vnodeopv_entry_desc cd9660_
 	{ &vop_setattr_desc, cd9660_setattr },		/* setattr */
 	{ &vop_read_desc, spec_read },			/* read */
 	{ &vop_write_desc, spec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -957,6 +961,8 @@ const struct vnodeopv_entry_desc cd9660_
 	{ &vop_setattr_desc, cd9660_setattr },		/* setattr */
 	{ &vop_read_desc, vn_fifo_bypass },		/* read */
 	{ &vop_write_desc, vn_fifo_bypass },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/fs/efs/efs_vnops.c
diff -u src/sys/fs/efs/efs_vnops.c:1.31 src/sys/fs/efs/efs_vnops.c:1.32
--- src/sys/fs/efs/efs_vnops.c:1.31	Fri Feb  7 15:29:21 2014
+++ src/sys/fs/efs/efs_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: efs_vnops.c,v 1.31 2014/02/07 15:29:21 hannken Exp $	*/
+/*	$NetBSD: efs_vnops.c,v 1.32 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*
  * Copyright (c) 2006 Stephen M. Rumble <rum...@ephemeral.org>
@@ -17,7 +17,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: efs_vnops.c,v 1.31 2014/02/07 15:29:21 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: efs_vnops.c,v 1.32 2014/07/25 08:20:51 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -809,6 +809,8 @@ const struct vnodeopv_entry_desc efs_vno
 	{ &vop_setattr_desc,	genfs_eopnotsupp},	/* setattr */
 	{ &vop_read_desc,	efs_read	},	/* read */
 	{ &vop_write_desc,	genfs_eopnotsupp},	/* write */
+	{ &vop_fallocate_desc,	genfs_eopnotsupp},	/* fallocate */
+	{ &vop_fdiscard_desc,	genfs_eopnotsupp},	/* fdiscard */
 	{ &vop_ioctl_desc,	genfs_enoioctl	},	/* ioctl */
 	{ &vop_fcntl_desc,	genfs_fcntl	},	/* fcntl */
 	{ &vop_poll_desc,	genfs_poll	},	/* poll */
@@ -865,6 +867,8 @@ const struct vnodeopv_entry_desc efs_spe
 	{ &vop_setattr_desc,	genfs_eopnotsupp},	/* setattr */
 	{ &vop_read_desc,	spec_read	},	/* read */
 	{ &vop_write_desc,	spec_write	},	/* write */
+	{ &vop_fallocate_desc,	spec_fallocate	},	/* fallocate */
+	{ &vop_fdiscard_desc,	spec_fdiscard	},	/* fdiscard */
 	{ &vop_ioctl_desc,	spec_ioctl	},	/* ioctl */
 	{ &vop_fcntl_desc,	genfs_fcntl	},	/* fcntl */
 	{ &vop_poll_desc,	spec_poll	},	/* poll */
@@ -921,6 +925,8 @@ const struct vnodeopv_entry_desc efs_fif
 	{ &vop_setattr_desc,	genfs_eopnotsupp},	/* setattr */
 	{ &vop_read_desc,	vn_fifo_bypass	},	/* read */
 	{ &vop_write_desc,	vn_fifo_bypass	},	/* write */
+	{ &vop_fallocate_desc,	vn_fifo_bypass	},	/* fallocate */
+	{ &vop_fdiscard_desc,	vn_fifo_bypass	},	/* fdiscard */
 	{ &vop_ioctl_desc,	vn_fifo_bypass	},	/* ioctl */
 	{ &vop_fcntl_desc,	genfs_fcntl	},	/* fcntl */
 	{ &vop_poll_desc,	vn_fifo_bypass	},	/* poll */

Index: src/sys/fs/filecorefs/filecore_vnops.c
diff -u src/sys/fs/filecorefs/filecore_vnops.c:1.41 src/sys/fs/filecorefs/filecore_vnops.c:1.42
--- src/sys/fs/filecorefs/filecore_vnops.c:1.41	Thu Jan 23 10:13:56 2014
+++ src/sys/fs/filecorefs/filecore_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: filecore_vnops.c,v 1.41 2014/01/23 10:13:56 hannken Exp $	*/
+/*	$NetBSD: filecore_vnops.c,v 1.42 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1994 The Regents of the University of California.
@@ -66,7 +66,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: filecore_vnops.c,v 1.41 2014/01/23 10:13:56 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: filecore_vnops.c,v 1.42 2014/07/25 08:20:51 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -565,6 +565,8 @@ const struct vnodeopv_entry_desc filecor
 	{ &vop_setattr_desc, filecore_setattr },	/* setattr */
 	{ &vop_read_desc, filecore_read },		/* read */
 	{ &vop_write_desc, filecore_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, filecore_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, filecore_ioctl },		/* ioctl */
 	{ &vop_poll_desc, filecore_poll },		/* poll */

Index: src/sys/fs/hfs/hfs_vnops.c
diff -u src/sys/fs/hfs/hfs_vnops.c:1.29 src/sys/fs/hfs/hfs_vnops.c:1.30
--- src/sys/fs/hfs/hfs_vnops.c:1.29	Fri Feb  7 15:29:21 2014
+++ src/sys/fs/hfs/hfs_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: hfs_vnops.c,v 1.29 2014/02/07 15:29:21 hannken Exp $	*/
+/*	$NetBSD: hfs_vnops.c,v 1.30 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2005, 2007 The NetBSD Foundation, Inc.
@@ -101,7 +101,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: hfs_vnops.c,v 1.29 2014/02/07 15:29:21 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: hfs_vnops.c,v 1.30 2014/07/25 08:20:51 dholland Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ipsec.h"
@@ -165,6 +165,8 @@ const struct vnodeopv_entry_desc hfs_vno
 	{ &vop_setattr_desc, hfs_vop_setattr },		/* setattr */
 	{ &vop_read_desc, hfs_vop_read },		/* read */
 	{ &vop_write_desc, genfs_eopnotsupp },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, genfs_eopnotsupp },		/* ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, genfs_eopnotsupp },		/* poll */
@@ -219,6 +221,8 @@ const struct vnodeopv_entry_desc hfs_spe
 	{ &vop_setattr_desc, hfs_vop_setattr },		/* setattr */
 	{ &vop_read_desc, spec_read },			/* read */
 	{ &vop_write_desc, spec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -275,6 +279,8 @@ const struct vnodeopv_entry_desc hfs_fif
 	{ &vop_setattr_desc, hfs_vop_setattr },		/* setattr */
 	{ &vop_read_desc, vn_fifo_bypass },		/* read */
 	{ &vop_write_desc, vn_fifo_bypass },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/fs/msdosfs/msdosfs_vnops.c
diff -u src/sys/fs/msdosfs/msdosfs_vnops.c:1.90 src/sys/fs/msdosfs/msdosfs_vnops.c:1.91
--- src/sys/fs/msdosfs/msdosfs_vnops.c:1.90	Tue Jul  8 09:21:52 2014
+++ src/sys/fs/msdosfs/msdosfs_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: msdosfs_vnops.c,v 1.90 2014/07/08 09:21:52 hannken Exp $	*/
+/*	$NetBSD: msdosfs_vnops.c,v 1.91 2014/07/25 08:20:51 dholland Exp $	*/
 
 /*-
  * Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank.
@@ -48,7 +48,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: msdosfs_vnops.c,v 1.90 2014/07/08 09:21:52 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: msdosfs_vnops.c,v 1.91 2014/07/25 08:20:51 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1878,6 +1878,8 @@ const struct vnodeopv_entry_desc msdosfs
 	{ &vop_setattr_desc, msdosfs_setattr },		/* setattr */
 	{ &vop_read_desc, msdosfs_read },		/* read */
 	{ &vop_write_desc, msdosfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, msdosfs_ioctl },		/* ioctl */
 	{ &vop_poll_desc, msdosfs_poll },		/* poll */

Index: src/sys/fs/nilfs/nilfs_vnops.c
diff -u src/sys/fs/nilfs/nilfs_vnops.c:1.27 src/sys/fs/nilfs/nilfs_vnops.c:1.28
--- src/sys/fs/nilfs/nilfs_vnops.c:1.27	Fri Feb  7 15:29:21 2014
+++ src/sys/fs/nilfs/nilfs_vnops.c	Fri Jul 25 08:20:51 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: nilfs_vnops.c,v 1.27 2014/02/07 15:29:21 hannken Exp $ */
+/* $NetBSD: nilfs_vnops.c,v 1.28 2014/07/25 08:20:51 dholland Exp $ */
 
 /*
  * Copyright (c) 2008, 2009 Reinoud Zandijk
@@ -28,7 +28,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: nilfs_vnops.c,v 1.27 2014/02/07 15:29:21 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nilfs_vnops.c,v 1.28 2014/07/25 08:20:51 dholland Exp $");
 #endif /* not lint */
 
 
@@ -1572,6 +1572,8 @@ const struct vnodeopv_entry_desc nilfs_v
 	{ &vop_setattr_desc, nilfs_setattr },	/* setattr */	/* TODO chflags */
 	{ &vop_read_desc, nilfs_read },		/* read */
 	{ &vop_write_desc, nilfs_write },	/* write */	/* WRITE */
+	{ &vop_fallocate_desc, genfs_eopnotsupp }, /* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp }, /* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },	/* fcntl */	/* TODO? */
 	{ &vop_ioctl_desc, genfs_enoioctl },	/* ioctl */	/* TODO? */
 	{ &vop_poll_desc, genfs_poll },		/* poll */	/* TODO/OK? */

Index: src/sys/fs/ntfs/ntfs_vnops.c
diff -u src/sys/fs/ntfs/ntfs_vnops.c:1.56 src/sys/fs/ntfs/ntfs_vnops.c:1.57
--- src/sys/fs/ntfs/ntfs_vnops.c:1.56	Fri Feb  7 15:29:21 2014
+++ src/sys/fs/ntfs/ntfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: ntfs_vnops.c,v 1.56 2014/02/07 15:29:21 hannken Exp $	*/
+/*	$NetBSD: ntfs_vnops.c,v 1.57 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -36,7 +36,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ntfs_vnops.c,v 1.56 2014/02/07 15:29:21 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ntfs_vnops.c,v 1.57 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -818,6 +818,8 @@ const struct vnodeopv_entry_desc ntfs_vn
 	{ &vop_setattr_desc, genfs_eopnotsupp },	/* setattr */
 	{ &vop_read_desc, (vop_t *) ntfs_read },	/* read */
 	{ &vop_write_desc, (vop_t *) ntfs_write },	/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, genfs_enoioctl },		/* ioctl */
 	{ &vop_poll_desc, genfs_poll },			/* poll */

Index: src/sys/fs/ptyfs/ptyfs_vnops.c
diff -u src/sys/fs/ptyfs/ptyfs_vnops.c:1.46 src/sys/fs/ptyfs/ptyfs_vnops.c:1.47
--- src/sys/fs/ptyfs/ptyfs_vnops.c:1.46	Fri Apr  4 18:10:29 2014
+++ src/sys/fs/ptyfs/ptyfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: ptyfs_vnops.c,v 1.46 2014/04/04 18:10:29 christos Exp $	*/
+/*	$NetBSD: ptyfs_vnops.c,v 1.47 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 1993, 1995
@@ -76,7 +76,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ptyfs_vnops.c,v 1.46 2014/04/04 18:10:29 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ptyfs_vnops.c,v 1.47 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -176,6 +176,8 @@ const struct vnodeopv_entry_desc ptyfs_v
 	{ &vop_setattr_desc, ptyfs_setattr },		/* setattr */
 	{ &vop_read_desc, ptyfs_read },			/* read */
 	{ &vop_write_desc, ptyfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, ptyfs_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, ptyfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, ptyfs_poll },			/* poll */

Index: src/sys/fs/puffs/puffs_vnops.c
diff -u src/sys/fs/puffs/puffs_vnops.c:1.181 src/sys/fs/puffs/puffs_vnops.c:1.182
--- src/sys/fs/puffs/puffs_vnops.c:1.181	Mon Mar 24 13:42:40 2014
+++ src/sys/fs/puffs/puffs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: puffs_vnops.c,v 1.181 2014/03/24 13:42:40 hannken Exp $	*/
+/*	$NetBSD: puffs_vnops.c,v 1.182 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 2005, 2006, 2007  Antti Kantee.  All Rights Reserved.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.181 2014/03/24 13:42:40 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.182 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/buf.h>
@@ -113,6 +113,8 @@ const struct vnodeopv_entry_desc puffs_v
         { &vop_setattr_desc, puffs_vnop_checkop },	/* setattr */
         { &vop_read_desc, puffs_vnop_checkop },		/* read */
         { &vop_write_desc, puffs_vnop_checkop },	/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
         { &vop_fsync_desc, puffs_vnop_fsync },		/* REAL fsync */
         { &vop_seek_desc, puffs_vnop_checkop },		/* seek */
         { &vop_remove_desc, puffs_vnop_checkop },	/* remove */
@@ -168,6 +170,8 @@ const struct vnodeopv_entry_desc puffs_s
 	{ &vop_setattr_desc, puffs_vnop_checkop },	/* setattr */
 	{ &vop_read_desc, puffs_vnop_spec_read },	/* update, read */
 	{ &vop_write_desc, puffs_vnop_spec_write },	/* update, write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_ioctl_desc, spec_ioctl },		/* spec_ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* dummy */
 	{ &vop_poll_desc, spec_poll },			/* spec_poll */
@@ -225,6 +229,8 @@ const struct vnodeopv_entry_desc puffs_f
 	{ &vop_setattr_desc, puffs_vnop_checkop },	/* setattr */
 	{ &vop_read_desc, puffs_vnop_fifo_read },	/* read, update */
 	{ &vop_write_desc, puffs_vnop_fifo_write },	/* write, update */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* dummy */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/fs/smbfs/smbfs_vnops.c
diff -u src/sys/fs/smbfs/smbfs_vnops.c:1.90 src/sys/fs/smbfs/smbfs_vnops.c:1.91
--- src/sys/fs/smbfs/smbfs_vnops.c:1.90	Fri Apr 25 15:18:06 2014
+++ src/sys/fs/smbfs/smbfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: smbfs_vnops.c,v 1.90 2014/04/25 15:18:06 pooka Exp $	*/
+/*	$NetBSD: smbfs_vnops.c,v 1.91 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -64,7 +64,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: smbfs_vnops.c,v 1.90 2014/04/25 15:18:06 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: smbfs_vnops.c,v 1.91 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -127,6 +127,8 @@ static struct vnodeopv_entry_desc smbfs_
 	{ &vop_advlock_desc,		smbfs_advlock },
 	{ &vop_close_desc,		smbfs_close },
 	{ &vop_create_desc,		smbfs_create },
+	{ &vop_fallocate_desc,		genfs_eopnotsupp },
+	{ &vop_fdiscard_desc,		genfs_eopnotsupp },
 	{ &vop_fsync_desc,		smbfs_fsync },
 	{ &vop_getattr_desc,		smbfs_getattr },
 	{ &vop_getpages_desc,		genfs_compat_getpages },

Index: src/sys/fs/sysvbfs/sysvbfs.c
diff -u src/sys/fs/sysvbfs/sysvbfs.c:1.13 src/sys/fs/sysvbfs/sysvbfs.c:1.14
--- src/sys/fs/sysvbfs/sysvbfs.c:1.13	Sun Mar 23 15:21:15 2014
+++ src/sys/fs/sysvbfs/sysvbfs.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: sysvbfs.c,v 1.13 2014/03/23 15:21:15 hannken Exp $	*/
+/*	$NetBSD: sysvbfs.c,v 1.14 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2004 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sysvbfs.c,v 1.13 2014/03/23 15:21:15 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sysvbfs.c,v 1.14 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/resource.h>
 #include <sys/param.h>
@@ -59,6 +59,8 @@ const struct vnodeopv_entry_desc sysvbfs
 	{ &vop_setattr_desc, sysvbfs_setattr },		/* setattr */
 	{ &vop_read_desc, sysvbfs_read },		/* read */
 	{ &vop_write_desc, sysvbfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, genfs_enoioctl },		/* ioctl */
 	{ &vop_poll_desc, genfs_poll },			/* poll */

Index: src/sys/fs/tmpfs/tmpfs_fifoops.c
diff -u src/sys/fs/tmpfs/tmpfs_fifoops.c:1.10 src/sys/fs/tmpfs/tmpfs_fifoops.c:1.11
--- src/sys/fs/tmpfs/tmpfs_fifoops.c:1.10	Sat Nov 23 16:35:32 2013
+++ src/sys/fs/tmpfs/tmpfs_fifoops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: tmpfs_fifoops.c,v 1.10 2013/11/23 16:35:32 rmind Exp $	*/
+/*	$NetBSD: tmpfs_fifoops.c,v 1.11 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 2005 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tmpfs_fifoops.c,v 1.10 2013/11/23 16:35:32 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tmpfs_fifoops.c,v 1.11 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/vnode.h>
@@ -59,6 +59,8 @@ const struct vnodeopv_entry_desc tmpfs_f
 	{ &vop_setattr_desc,		tmpfs_fifo_setattr },
 	{ &vop_read_desc,		tmpfs_fifo_read },
 	{ &vop_write_desc,		tmpfs_fifo_write },
+	{ &vop_fallocate_desc,		vn_fifo_bypass },
+	{ &vop_fdiscard_desc,		vn_fifo_bypass },
 	{ &vop_ioctl_desc,		tmpfs_fifo_ioctl },
 	{ &vop_fcntl_desc,		tmpfs_fifo_fcntl },
 	{ &vop_poll_desc,		tmpfs_fifo_poll },

Index: src/sys/fs/tmpfs/tmpfs_specops.c
diff -u src/sys/fs/tmpfs/tmpfs_specops.c:1.11 src/sys/fs/tmpfs/tmpfs_specops.c:1.12
--- src/sys/fs/tmpfs/tmpfs_specops.c:1.11	Sat Nov 23 16:35:32 2013
+++ src/sys/fs/tmpfs/tmpfs_specops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: tmpfs_specops.c,v 1.11 2013/11/23 16:35:32 rmind Exp $	*/
+/*	$NetBSD: tmpfs_specops.c,v 1.12 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 2005 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tmpfs_specops.c,v 1.11 2013/11/23 16:35:32 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tmpfs_specops.c,v 1.12 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/vnode.h>
@@ -62,6 +62,8 @@ const struct vnodeopv_entry_desc tmpfs_s
 	{ &vop_setattr_desc,		tmpfs_spec_setattr },
 	{ &vop_read_desc,		tmpfs_spec_read },
 	{ &vop_write_desc,		tmpfs_spec_write },
+	{ &vop_fallocate_desc,		spec_fallocate },
+	{ &vop_fdiscard_desc,		spec_fdiscard },
 	{ &vop_ioctl_desc,		tmpfs_spec_ioctl },
 	{ &vop_fcntl_desc,		tmpfs_spec_fcntl },
 	{ &vop_poll_desc,		tmpfs_spec_poll },

Index: src/sys/fs/tmpfs/tmpfs_vnops.c
diff -u src/sys/fs/tmpfs/tmpfs_vnops.c:1.119 src/sys/fs/tmpfs/tmpfs_vnops.c:1.120
--- src/sys/fs/tmpfs/tmpfs_vnops.c:1.119	Mon May 26 19:12:07 2014
+++ src/sys/fs/tmpfs/tmpfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: tmpfs_vnops.c,v 1.119 2014/05/26 19:12:07 rmind Exp $	*/
+/*	$NetBSD: tmpfs_vnops.c,v 1.120 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 2005, 2006, 2007 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tmpfs_vnops.c,v 1.119 2014/05/26 19:12:07 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tmpfs_vnops.c,v 1.120 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/dirent.h>
@@ -74,6 +74,8 @@ const struct vnodeopv_entry_desc tmpfs_v
 	{ &vop_setattr_desc,		tmpfs_setattr },
 	{ &vop_read_desc,		tmpfs_read },
 	{ &vop_write_desc,		tmpfs_write },
+	{ &vop_fallocate_desc,		genfs_eopnotsupp },
+	{ &vop_fdiscard_desc,		genfs_eopnotsupp },
 	{ &vop_ioctl_desc,		tmpfs_ioctl },
 	{ &vop_fcntl_desc,		tmpfs_fcntl },
 	{ &vop_poll_desc,		tmpfs_poll },

Index: src/sys/fs/udf/udf_vnops.c
diff -u src/sys/fs/udf/udf_vnops.c:1.91 src/sys/fs/udf/udf_vnops.c:1.92
--- src/sys/fs/udf/udf_vnops.c:1.91	Sun Mar 23 09:34:42 2014
+++ src/sys/fs/udf/udf_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_vnops.c,v 1.91 2014/03/23 09:34:42 christos Exp $ */
+/* $NetBSD: udf_vnops.c,v 1.92 2014/07/25 08:20:52 dholland Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -32,7 +32,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_vnops.c,v 1.91 2014/03/23 09:34:42 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_vnops.c,v 1.92 2014/07/25 08:20:52 dholland Exp $");
 #endif /* not lint */
 
 
@@ -2143,6 +2143,8 @@ const struct vnodeopv_entry_desc udf_vno
 	{ &vop_setattr_desc, udf_setattr },	/* setattr */	/* TODO chflags */
 	{ &vop_read_desc, udf_read },		/* read */
 	{ &vop_write_desc, udf_write },		/* write */	/* WRITE */
+	{ &vop_fallocate_desc, genfs_eopnotsupp }, /* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp }, /* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },	/* fcntl */	/* TODO? */
 	{ &vop_ioctl_desc, genfs_enoioctl },	/* ioctl */	/* TODO? */
 	{ &vop_poll_desc, genfs_poll },		/* poll */	/* TODO/OK? */

Index: src/sys/fs/union/union_vnops.c
diff -u src/sys/fs/union/union_vnops.c:1.61 src/sys/fs/union/union_vnops.c:1.62
--- src/sys/fs/union/union_vnops.c:1.61	Sat May 17 04:07:15 2014
+++ src/sys/fs/union/union_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: union_vnops.c,v 1.61 2014/05/17 04:07:15 dholland Exp $	*/
+/*	$NetBSD: union_vnops.c,v 1.62 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993, 1994, 1995
@@ -72,7 +72,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: union_vnops.c,v 1.61 2014/05/17 04:07:15 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: union_vnops.c,v 1.62 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -155,6 +155,8 @@ const struct vnodeopv_entry_desc union_v
 	{ &vop_setattr_desc, union_setattr },		/* setattr */
 	{ &vop_read_desc, union_read },			/* read */
 	{ &vop_write_desc, union_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, union_ioctl },		/* ioctl */
 	{ &vop_poll_desc, union_poll },			/* select */
 	{ &vop_revoke_desc, union_revoke },		/* revoke */

Index: src/sys/fs/unionfs/unionfs_vnops.c
diff -u src/sys/fs/unionfs/unionfs_vnops.c:1.7 src/sys/fs/unionfs/unionfs_vnops.c:1.8
--- src/sys/fs/unionfs/unionfs_vnops.c:1.7	Mon Nov  5 17:27:39 2012
+++ src/sys/fs/unionfs/unionfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1820,6 +1820,8 @@ const struct vnodeopv_entry_desc unionfs
 	{ &vop_setattr_desc, unionfs_setattr },		/* setattr */
 	{ &vop_read_desc, unionfs_read },		/* read */
 	{ &vop_write_desc, unionfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, unionfs_ioctl },		/* ioctl */
 	{ &vop_poll_desc, unionfs_poll },		/* select */
 	{ &vop_revoke_desc, unionfs_revoke },		/* revoke */

Index: src/sys/fs/v7fs/v7fs_extern.c
diff -u src/sys/fs/v7fs/v7fs_extern.c:1.2 src/sys/fs/v7fs/v7fs_extern.c:1.3
--- src/sys/fs/v7fs/v7fs_extern.c:1.2	Sun Mar 23 15:21:16 2014
+++ src/sys/fs/v7fs/v7fs_extern.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: v7fs_extern.c,v 1.2 2014/03/23 15:21:16 hannken Exp $	*/
+/*	$NetBSD: v7fs_extern.c,v 1.3 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2004, 2011 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: v7fs_extern.c,v 1.2 2014/03/23 15:21:16 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: v7fs_extern.c,v 1.3 2014/07/25 08:20:52 dholland Exp $");
 
 #if defined _KERNEL_OPT
 #include "opt_v7fs.h"
@@ -65,6 +65,8 @@ const struct vnodeopv_entry_desc v7fs_vn
 	{ &vop_setattr_desc, v7fs_setattr },		/* setattr */
 	{ &vop_read_desc, v7fs_read },			/* read */
 	{ &vop_write_desc, v7fs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, genfs_enoioctl },		/* ioctl */
 	{ &vop_poll_desc, genfs_poll },			/* poll */
@@ -112,6 +114,8 @@ const struct vnodeopv_entry_desc v7fs_sp
 	{ &vop_setattr_desc, v7fs_setattr },		/* setattr */
 	{ &vop_read_desc, spec_read },			/* read */
 	{ &vop_write_desc, spec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -158,6 +162,8 @@ const struct vnodeopv_entry_desc v7fs_fi
 	{ &vop_setattr_desc, v7fs_setattr },		/* setattr */
 	{ &vop_read_desc, vn_fifo_bypass },		/* read */
 	{ &vop_write_desc, vn_fifo_bypass },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/miscfs/deadfs/dead_vnops.c
diff -u src/sys/miscfs/deadfs/dead_vnops.c:1.56 src/sys/miscfs/deadfs/dead_vnops.c:1.57
--- src/sys/miscfs/deadfs/dead_vnops.c:1.56	Thu Feb 27 16:51:38 2014
+++ src/sys/miscfs/deadfs/dead_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: dead_vnops.c,v 1.56 2014/02/27 16:51:38 hannken Exp $	*/
+/*	$NetBSD: dead_vnops.c,v 1.57 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 1989, 1993
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dead_vnops.c,v 1.56 2014/02/27 16:51:38 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dead_vnops.c,v 1.57 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -87,6 +87,8 @@ const struct vnodeopv_entry_desc dead_vn
 	{ &vop_close_desc, dead_close },		/* close */
 	{ &vop_read_desc, dead_read },			/* read */
 	{ &vop_write_desc, dead_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, dead_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, dead_ioctl },		/* ioctl */
 	{ &vop_poll_desc, dead_poll },			/* poll */

Index: src/sys/miscfs/fdesc/fdesc_vnops.c
diff -u src/sys/miscfs/fdesc/fdesc_vnops.c:1.120 src/sys/miscfs/fdesc/fdesc_vnops.c:1.121
--- src/sys/miscfs/fdesc/fdesc_vnops.c:1.120	Sun Jul 13 11:23:01 2014
+++ src/sys/miscfs/fdesc/fdesc_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: fdesc_vnops.c,v 1.120 2014/07/13 11:23:01 hannken Exp $	*/
+/*	$NetBSD: fdesc_vnops.c,v 1.121 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -41,7 +41,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: fdesc_vnops.c,v 1.120 2014/07/13 11:23:01 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: fdesc_vnops.c,v 1.121 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -130,6 +130,8 @@ const struct vnodeopv_entry_desc fdesc_v
 	{ &vop_setattr_desc, fdesc_setattr },		/* setattr */
 	{ &vop_read_desc, fdesc_read },			/* read */
 	{ &vop_write_desc, fdesc_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, fdesc_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, fdesc_fcntl },		/* fcntl */
 	{ &vop_poll_desc, fdesc_poll },			/* poll */

Index: src/sys/miscfs/fifofs/fifo_vnops.c
diff -u src/sys/miscfs/fifofs/fifo_vnops.c:1.75 src/sys/miscfs/fifofs/fifo_vnops.c:1.76
--- src/sys/miscfs/fifofs/fifo_vnops.c:1.75	Sat May 17 23:30:24 2014
+++ src/sys/miscfs/fifofs/fifo_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: fifo_vnops.c,v 1.75 2014/05/17 23:30:24 rmind Exp $	*/
+/*	$NetBSD: fifo_vnops.c,v 1.76 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -58,7 +58,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: fifo_vnops.c,v 1.75 2014/05/17 23:30:24 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: fifo_vnops.c,v 1.76 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -633,6 +633,8 @@ const struct vnodeopv_entry_desc fifo_vn
 	{ &vop_setattr_desc, genfs_ebadf },		/* setattr */
 	{ &vop_read_desc, fifo_read },			/* read */
 	{ &vop_write_desc, fifo_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, fifo_ioctl },		/* ioctl */
 	{ &vop_poll_desc, fifo_poll },			/* poll */
 	{ &vop_kqfilter_desc, fifo_kqfilter },		/* kqfilter */

Index: src/sys/miscfs/kernfs/kernfs_vnops.c
diff -u src/sys/miscfs/kernfs/kernfs_vnops.c:1.153 src/sys/miscfs/kernfs/kernfs_vnops.c:1.154
--- src/sys/miscfs/kernfs/kernfs_vnops.c:1.153	Sun Jul 20 13:58:04 2014
+++ src/sys/miscfs/kernfs/kernfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: kernfs_vnops.c,v 1.153 2014/07/20 13:58:04 hannken Exp $	*/
+/*	$NetBSD: kernfs_vnops.c,v 1.154 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kernfs_vnops.c,v 1.153 2014/07/20 13:58:04 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kernfs_vnops.c,v 1.154 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -191,6 +191,8 @@ const struct vnodeopv_entry_desc kernfs_
 	{ &vop_setattr_desc, kernfs_setattr },		/* setattr */
 	{ &vop_read_desc, kernfs_read },		/* read */
 	{ &vop_write_desc, kernfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, kernfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, kernfs_ioctl },		/* ioctl */
 	{ &vop_poll_desc, kernfs_poll },		/* poll */

Index: src/sys/miscfs/procfs/procfs_vnops.c
diff -u src/sys/miscfs/procfs/procfs_vnops.c:1.189 src/sys/miscfs/procfs/procfs_vnops.c:1.190
--- src/sys/miscfs/procfs/procfs_vnops.c:1.189	Fri Feb  7 15:29:22 2014
+++ src/sys/miscfs/procfs/procfs_vnops.c	Fri Jul 25 08:20:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: procfs_vnops.c,v 1.189 2014/02/07 15:29:22 hannken Exp $	*/
+/*	$NetBSD: procfs_vnops.c,v 1.190 2014/07/25 08:20:52 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2006, 2007, 2008 The NetBSD Foundation, Inc.
@@ -105,7 +105,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: procfs_vnops.c,v 1.189 2014/02/07 15:29:22 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: procfs_vnops.c,v 1.190 2014/07/25 08:20:52 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -259,6 +259,8 @@ const struct vnodeopv_entry_desc procfs_
 	{ &vop_setattr_desc, procfs_setattr },		/* setattr */
 	{ &vop_read_desc, procfs_read },		/* read */
 	{ &vop_write_desc, procfs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, procfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, procfs_ioctl },		/* ioctl */
 	{ &vop_poll_desc, procfs_poll },		/* poll */

Index: src/sys/miscfs/specfs/spec_vnops.c
diff -u src/sys/miscfs/specfs/spec_vnops.c:1.144 src/sys/miscfs/specfs/spec_vnops.c:1.145
--- src/sys/miscfs/specfs/spec_vnops.c:1.144	Fri Jul 25 08:19:19 2014
+++ src/sys/miscfs/specfs/spec_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: spec_vnops.c,v 1.144 2014/07/25 08:19:19 dholland Exp $	*/
+/*	$NetBSD: spec_vnops.c,v 1.145 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -58,7 +58,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: spec_vnops.c,v 1.144 2014/07/25 08:19:19 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: spec_vnops.c,v 1.145 2014/07/25 08:20:53 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/proc.h>
@@ -123,6 +123,8 @@ const struct vnodeopv_entry_desc spec_vn
 	{ &vop_setattr_desc, spec_setattr },		/* setattr */
 	{ &vop_read_desc, spec_read },			/* read */
 	{ &vop_write_desc, spec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_fcntl_desc, spec_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_poll_desc, spec_poll },			/* poll */

Index: src/sys/nfs/nfs_vnops.c
diff -u src/sys/nfs/nfs_vnops.c:1.305 src/sys/nfs/nfs_vnops.c:1.306
--- src/sys/nfs/nfs_vnops.c:1.305	Sat Jul  5 09:33:41 2014
+++ src/sys/nfs/nfs_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs_vnops.c,v 1.305 2014/07/05 09:33:41 hannken Exp $	*/
+/*	$NetBSD: nfs_vnops.c,v 1.306 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*
  * Copyright (c) 1989, 1993
@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nfs_vnops.c,v 1.305 2014/07/05 09:33:41 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nfs_vnops.c,v 1.306 2014/07/25 08:20:53 dholland Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_nfs.h"
@@ -107,6 +107,8 @@ const struct vnodeopv_entry_desc nfsv2_v
 	{ &vop_setattr_desc, nfs_setattr },		/* setattr */
 	{ &vop_read_desc, nfs_read },			/* read */
 	{ &vop_write_desc, nfs_write },			/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, nfs_ioctl },			/* ioctl */
 	{ &vop_poll_desc, nfs_poll },			/* poll */
@@ -158,6 +160,8 @@ const struct vnodeopv_entry_desc spec_nf
 	{ &vop_setattr_desc, nfs_setattr },		/* setattr */
 	{ &vop_read_desc, nfsspec_read },		/* read */
 	{ &vop_write_desc, nfsspec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -206,6 +210,8 @@ const struct vnodeopv_entry_desc fifo_nf
 	{ &vop_setattr_desc, nfs_setattr },		/* setattr */
 	{ &vop_read_desc, nfsfifo_read },		/* read */
 	{ &vop_write_desc, nfsfifo_write },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_fcntl_desc, genfs_fcntl },		/* fcntl */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/ufs/chfs/chfs_vnops.c
diff -u src/sys/ufs/chfs/chfs_vnops.c:1.21 src/sys/ufs/chfs/chfs_vnops.c:1.22
--- src/sys/ufs/chfs/chfs_vnops.c:1.21	Fri Feb  7 15:29:23 2014
+++ src/sys/ufs/chfs/chfs_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: chfs_vnops.c,v 1.21 2014/02/07 15:29:23 hannken Exp $	*/
+/*	$NetBSD: chfs_vnops.c,v 1.22 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2010 Department of Software Engineering,
@@ -1616,6 +1616,8 @@ const struct vnodeopv_entry_desc chfs_vn
 		{ &vop_setattr_desc, chfs_setattr },
 		{ &vop_read_desc, chfs_read },
 		{ &vop_write_desc, chfs_write },
+		{ &vop_fallocate_desc, genfs_eopnotsupp },
+		{ &vop_fdiscard_desc, genfs_eopnotsupp },
 		{ &vop_ioctl_desc, genfs_enoioctl },
 		{ &vop_fcntl_desc, genfs_fcntl },
 		{ &vop_poll_desc, genfs_poll },
@@ -1672,6 +1674,8 @@ const struct vnodeopv_entry_desc chfs_sp
 		{ &vop_setattr_desc, chfs_setattr },
 		{ &vop_read_desc, chfs_read },
 		{ &vop_write_desc, chfs_write },
+		{ &vop_fallocate_desc, spec_fallocate },
+		{ &vop_fdiscard_desc, spec_fdiscard },
 		{ &vop_ioctl_desc, spec_ioctl },
 		{ &vop_fcntl_desc, genfs_fcntl },
 		{ &vop_poll_desc, spec_poll },
@@ -1726,6 +1730,8 @@ const struct vnodeopv_entry_desc chfs_fi
 		{ &vop_setattr_desc, chfs_setattr },
 		{ &vop_read_desc, ufsfifo_read },
 		{ &vop_write_desc, ufsfifo_write },
+		{ &vop_fallocate_desc, vn_fifo_bypass },
+		{ &vop_fdiscard_desc, vn_fifo_bypass },
 		{ &vop_ioctl_desc, vn_fifo_bypass },
 		{ &vop_fcntl_desc, genfs_fcntl },
 		{ &vop_poll_desc, vn_fifo_bypass },

Index: src/sys/ufs/ext2fs/ext2fs_vnops.c
diff -u src/sys/ufs/ext2fs/ext2fs_vnops.c:1.112 src/sys/ufs/ext2fs/ext2fs_vnops.c:1.113
--- src/sys/ufs/ext2fs/ext2fs_vnops.c:1.112	Sun May 25 13:47:22 2014
+++ src/sys/ufs/ext2fs/ext2fs_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: ext2fs_vnops.c,v 1.112 2014/05/25 13:47:22 hannken Exp $	*/
+/*	$NetBSD: ext2fs_vnops.c,v 1.113 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*
  * Copyright (c) 1982, 1986, 1989, 1993
@@ -65,7 +65,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ext2fs_vnops.c,v 1.112 2014/05/25 13:47:22 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ext2fs_vnops.c,v 1.113 2014/07/25 08:20:53 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1143,6 +1143,8 @@ const struct vnodeopv_entry_desc ext2fs_
 	{ &vop_setattr_desc, ext2fs_setattr },		/* setattr */
 	{ &vop_read_desc, ext2fs_read },		/* read */
 	{ &vop_write_desc, ext2fs_write },		/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, ufs_ioctl },			/* ioctl */
 	{ &vop_fcntl_desc, ufs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, ufs_poll },			/* poll */
@@ -1191,6 +1193,8 @@ const struct vnodeopv_entry_desc ext2fs_
 	{ &vop_setattr_desc, ext2fs_setattr },		/* setattr */
 	{ &vop_read_desc, ufsspec_read },		/* read */
 	{ &vop_write_desc, ufsspec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, ufs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -1239,6 +1243,8 @@ const struct vnodeopv_entry_desc ext2fs_
 	{ &vop_setattr_desc, ext2fs_setattr },		/* setattr */
 	{ &vop_read_desc, ufsfifo_read },		/* read */
 	{ &vop_write_desc, ufsfifo_write },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_fcntl_desc, ufs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/ufs/ffs/ffs_vnops.c
diff -u src/sys/ufs/ffs/ffs_vnops.c:1.124 src/sys/ufs/ffs/ffs_vnops.c:1.125
--- src/sys/ufs/ffs/ffs_vnops.c:1.124	Mon Mar 24 13:42:40 2014
+++ src/sys/ufs/ffs/ffs_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: ffs_vnops.c,v 1.124 2014/03/24 13:42:40 hannken Exp $	*/
+/*	$NetBSD: ffs_vnops.c,v 1.125 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ffs_vnops.c,v 1.124 2014/03/24 13:42:40 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ffs_vnops.c,v 1.125 2014/07/25 08:20:53 dholland Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_ffs.h"
@@ -115,6 +115,8 @@ const struct vnodeopv_entry_desc ffs_vno
 	{ &vop_setattr_desc, ufs_setattr },		/* setattr */
 	{ &vop_read_desc, ffs_read },			/* read */
 	{ &vop_write_desc, ffs_write },			/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, ufs_ioctl },			/* ioctl */
 	{ &vop_fcntl_desc, ufs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, ufs_poll },			/* poll */
@@ -169,6 +171,8 @@ const struct vnodeopv_entry_desc ffs_spe
 	{ &vop_setattr_desc, ufs_setattr },		/* setattr */
 	{ &vop_read_desc, ufsspec_read },		/* read */
 	{ &vop_write_desc, ufsspec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, ufs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -223,6 +227,8 @@ const struct vnodeopv_entry_desc ffs_fif
 	{ &vop_setattr_desc, ufs_setattr },		/* setattr */
 	{ &vop_read_desc, ufsfifo_read },		/* read */
 	{ &vop_write_desc, ufsfifo_write },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_fcntl_desc, ufs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/ufs/lfs/lfs_vnops.c
diff -u src/sys/ufs/lfs/lfs_vnops.c:1.268 src/sys/ufs/lfs/lfs_vnops.c:1.269
--- src/sys/ufs/lfs/lfs_vnops.c:1.268	Sat May 17 07:10:27 2014
+++ src/sys/ufs/lfs/lfs_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_vnops.c,v 1.268 2014/05/17 07:10:27 dholland Exp $	*/
+/*	$NetBSD: lfs_vnops.c,v 1.269 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc.
@@ -125,7 +125,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_vnops.c,v 1.268 2014/05/17 07:10:27 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_vnops.c,v 1.269 2014/07/25 08:20:53 dholland Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -200,6 +200,8 @@ const struct vnodeopv_entry_desc lfs_vno
 	{ &vop_setattr_desc, lfs_setattr },		/* setattr */
 	{ &vop_read_desc, lfs_read },			/* read */
 	{ &vop_write_desc, lfs_write },			/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, ulfs_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, lfs_fcntl },			/* fcntl */
 	{ &vop_poll_desc, ulfs_poll },			/* poll */
@@ -254,6 +256,8 @@ const struct vnodeopv_entry_desc lfs_spe
 	{ &vop_setattr_desc, lfs_setattr },		/* setattr */
 	{ &vop_read_desc, ulfsspec_read },		/* read */
 	{ &vop_write_desc, ulfsspec_write },		/* write */
+	{ &vop_fallocate_desc, spec_fallocate },	/* fallocate */
+	{ &vop_fdiscard_desc, spec_fdiscard },		/* fdiscard */
 	{ &vop_ioctl_desc, spec_ioctl },		/* ioctl */
 	{ &vop_fcntl_desc, ulfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, spec_poll },			/* poll */
@@ -308,6 +312,8 @@ const struct vnodeopv_entry_desc lfs_fif
 	{ &vop_setattr_desc, lfs_setattr },		/* setattr */
 	{ &vop_read_desc, ulfsfifo_read },		/* read */
 	{ &vop_write_desc, ulfsfifo_write },		/* write */
+	{ &vop_fallocate_desc, vn_fifo_bypass },	/* fallocate */
+	{ &vop_fdiscard_desc, vn_fifo_bypass },		/* fdiscard */
 	{ &vop_ioctl_desc, vn_fifo_bypass },		/* ioctl */
 	{ &vop_fcntl_desc, ulfs_fcntl },		/* fcntl */
 	{ &vop_poll_desc, vn_fifo_bypass },		/* poll */

Index: src/sys/ufs/mfs/mfs_vnops.c
diff -u src/sys/ufs/mfs/mfs_vnops.c:1.54 src/sys/ufs/mfs/mfs_vnops.c:1.55
--- src/sys/ufs/mfs/mfs_vnops.c:1.54	Thu Jun 24 13:03:19 2010
+++ src/sys/ufs/mfs/mfs_vnops.c	Fri Jul 25 08:20:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: mfs_vnops.c,v 1.54 2010/06/24 13:03:19 hannken Exp $	*/
+/*	$NetBSD: mfs_vnops.c,v 1.55 2014/07/25 08:20:53 dholland Exp $	*/
 
 /*
  * Copyright (c) 1989, 1993
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mfs_vnops.c,v 1.54 2010/06/24 13:03:19 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mfs_vnops.c,v 1.55 2014/07/25 08:20:53 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -68,6 +68,8 @@ const struct vnodeopv_entry_desc mfs_vno
 	{ &vop_setattr_desc, mfs_setattr },		/* setattr */
 	{ &vop_read_desc, mfs_read },			/* read */
 	{ &vop_write_desc, mfs_write },			/* write */
+	{ &vop_fallocate_desc, genfs_eopnotsupp },	/* fallocate */
+	{ &vop_fdiscard_desc, genfs_eopnotsupp },	/* fdiscard */
 	{ &vop_ioctl_desc, mfs_ioctl },			/* ioctl */
 	{ &vop_poll_desc, mfs_poll },			/* poll */
 	{ &vop_revoke_desc, mfs_revoke },		/* revoke */

Reply via email to