summaryrefslogtreecommitdiffstats
path: root/sys/fs/unionfs/union_vnops.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2001-04-29 11:48:41 +0000
committerphk <phk@FreeBSD.org>2001-04-29 11:48:41 +0000
commit608c1caf3bebcc3d9b0a01af62a7f57d2c6427ea (patch)
tree6b5998142cb5ea2562e19f6c067038ea2328965d /sys/fs/unionfs/union_vnops.c
parentc7663963a91bb0760538088c78d32f2c8585bb43 (diff)
downloadFreeBSD-src-608c1caf3bebcc3d9b0a01af62a7f57d2c6427ea.zip
FreeBSD-src-608c1caf3bebcc3d9b0a01af62a7f57d2c6427ea.tar.gz
Add a vop_stdbmap(), and make it part of the default vop vector.
Make 7 filesystems which don't really know about VOP_BMAP rely on the default vector, rather than more or less complete local vop_nopbmap() implementations.
Diffstat (limited to 'sys/fs/unionfs/union_vnops.c')
-rw-r--r--sys/fs/unionfs/union_vnops.c28
1 files changed, 1 insertions, 27 deletions
diff --git a/sys/fs/unionfs/union_vnops.c b/sys/fs/unionfs/union_vnops.c
index 2ca72d7..9529da5 100644
--- a/sys/fs/unionfs/union_vnops.c
+++ b/sys/fs/unionfs/union_vnops.c
@@ -69,7 +69,6 @@ SYSCTL_INT(_vfs, OID_AUTO, uniondebug, CTLFLAG_RD, &uniondebug, 0, "");
static int union_access __P((struct vop_access_args *ap));
static int union_advlock __P((struct vop_advlock_args *ap));
-static int union_bmap __P((struct vop_bmap_args *ap));
static int union_close __P((struct vop_close_args *ap));
static int union_create __P((struct vop_create_args *ap));
static int union_fsync __P((struct vop_fsync_args *ap));
@@ -1823,31 +1822,6 @@ union_unlock(ap)
return(error);
}
-/*
- * union_bmap:
- *
- * There isn't much we can do. We cannot push through to the real vnode
- * to get to the underlying device because this will bypass data
- * cached by the real vnode.
- *
- * For some reason we cannot return the 'real' vnode either, it seems
- * to blow up memory maps.
- */
-
-static int
-union_bmap(ap)
- struct vop_bmap_args /* {
- struct vnode *a_vp;
- daddr_t a_bn;
- struct vnode **a_vpp;
- daddr_t *a_bnp;
- int *a_runp;
- int *a_runb;
- } */ *ap;
-{
- return(EOPNOTSUPP);
-}
-
static int
union_print(ap)
struct vop_print_args /* {
@@ -1941,7 +1915,7 @@ static struct vnodeopv_entry_desc union_vnodeop_entries[] = {
{ &vop_default_desc, (vop_t *) vop_defaultop },
{ &vop_access_desc, (vop_t *) union_access },
{ &vop_advlock_desc, (vop_t *) union_advlock },
- { &vop_bmap_desc, (vop_t *) union_bmap },
+ { &vop_bmap_desc, (vop_t *) vop_eopnotsupp },
{ &vop_close_desc, (vop_t *) union_close },
{ &vop_create_desc, (vop_t *) union_create },
{ &vop_fsync_desc, (vop_t *) union_fsync },
OpenPOWER on IntegriCloud