summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2008-02-09 09:33:19 +0000
committerrwatson <rwatson@FreeBSD.org>2008-02-09 09:33:19 +0000
commite16828cb77bde0ce723cabbe41e90f81f2522749 (patch)
tree28f6d2b6db4580e328c46987584fbb3be7d98b80
parent61bc7e9048ebb34f39561b8d4d27617996bfb776 (diff)
downloadFreeBSD-src-e16828cb77bde0ce723cabbe41e90f81f2522749.zip
FreeBSD-src-e16828cb77bde0ce723cabbe41e90f81f2522749.tar.gz
Since Coda is effectively a stacked file system, use VOP_EOPNOTSUPP
for vop_bmap; delete the existing stub that returned either EINVAL or EOPNOTSUPP, and had unreachable calls to VOP_BMAP on the cache vnode. MFC after: 1 month
-rw-r--r--sys/fs/coda/coda_vnops.c38
-rw-r--r--sys/fs/coda/coda_vnops.h1
2 files changed, 1 insertions, 38 deletions
diff --git a/sys/fs/coda/coda_vnops.c b/sys/fs/coda/coda_vnops.c
index adfe09e..297a2dd 100644
--- a/sys/fs/coda/coda_vnops.c
+++ b/sys/fs/coda/coda_vnops.c
@@ -129,7 +129,7 @@ struct vop_vector coda_vnodeops = {
.vop_reclaim = coda_reclaim, /* reclaim */
.vop_lock1 = coda_lock, /* lock */
.vop_unlock = coda_unlock, /* unlock */
- .vop_bmap = coda_bmap, /* bmap */
+ .vop_bmap = VOP_EOPNOTSUPP, /* bmap */
.vop_print = VOP_NULL, /* print */
.vop_islocked = coda_islocked, /* islocked */
.vop_pathconf = coda_pathconf, /* pathconf */
@@ -1489,42 +1489,6 @@ coda_readdir(struct vop_readdir_args *ap)
return(error);
}
-/*
- * Convert from filesystem blocks to device blocks
- */
-int
-coda_bmap(struct vop_bmap_args *ap)
-{
- /* XXX on the global proc */
-/* true args */
- struct vnode *vp __attribute__((unused)) = ap->a_vp; /* file's vnode */
- daddr_t bn __attribute__((unused)) = ap->a_bn; /* fs block number */
- struct bufobj **bop = ap->a_bop; /* RETURN bufobj of device */
- daddr_t *bnp __attribute__((unused)) = ap->a_bnp; /* RETURN device block number */
- struct thread *td __attribute__((unused)) = curthread;
-/* upcall decl */
-/* locals */
-
- int ret = 0;
- struct cnode *cp;
-
- cp = VTOC(vp);
- if (cp->c_ovp) {
- return EINVAL;
- ret = VOP_BMAP(cp->c_ovp, bn, bop, bnp, ap->a_runp, ap->a_runb);
-#if 0
- printf("VOP_BMAP(cp->c_ovp %p, bn %p, bop %p, bnp %lld, ap->a_runp %p, ap->a_runb %p) = %d\n",
- cp->c_ovp, bn, bop, bnp, ap->a_runp, ap->a_runb, ret);
-#endif
- return ret;
- } else {
-#if 0
- printf("coda_bmap: no container\n");
-#endif
- return(EOPNOTSUPP);
- }
-}
-
int
coda_reclaim(struct vop_reclaim_args *ap)
{
diff --git a/sys/fs/coda/coda_vnops.h b/sys/fs/coda/coda_vnops.h
index 75c3316..29b962c 100644
--- a/sys/fs/coda/coda_vnops.h
+++ b/sys/fs/coda/coda_vnops.h
@@ -69,7 +69,6 @@ vop_mkdir_t coda_mkdir;
vop_rmdir_t coda_rmdir;
vop_symlink_t coda_symlink;
vop_readdir_t coda_readdir;
-vop_bmap_t coda_bmap;
vop_strategy_t coda_strategy;
vop_reclaim_t coda_reclaim;
vop_lock1_t coda_lock;
OpenPOWER on IntegriCloud