From de5910460abcef40b50be9ce72339c8d3df990fb Mon Sep 17 00:00:00 2001 From: Robert Watson Date: Sat, 19 Jan 2008 17:12:44 +0000 Subject: [PATCH] Improve default vnode operation handling for Coda: - Don't specify vnode operations for mknod, lease, and advlock--let them fall through to vop_default. - Implement vop_default with &default_vnodeops, rather than with VOP_PANIC, so that unimplemented vnode operations are handled in more sensible ways than panicking, such as EOPNOTSUPP on ACL queries generated by bsdtar, or mknod. MFC after: 3 days --- sys/fs/coda/coda_vnops.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/sys/fs/coda/coda_vnops.c b/sys/fs/coda/coda_vnops.c index a349bd83488..fedb267d98a 100644 --- a/sys/fs/coda/coda_vnops.c +++ b/sys/fs/coda/coda_vnops.c @@ -106,10 +106,9 @@ static int coda_lockdebug = 0; /* Definition of the vnode operation vector */ struct vop_vector coda_vnodeops = { - .vop_default = VOP_PANIC, + .vop_default = &default_vnodeops, .vop_lookup = coda_lookup, /* lookup */ .vop_create = coda_create, /* create */ - .vop_mknod = VOP_PANIC, /* mknod */ .vop_open = coda_open, /* open */ .vop_close = coda_close, /* close */ .vop_access = coda_access, /* access */ @@ -135,8 +134,6 @@ struct vop_vector coda_vnodeops = { .vop_print = VOP_NULL, /* print */ .vop_islocked = coda_islocked, /* islocked */ .vop_pathconf = coda_pathconf, /* pathconf */ - .vop_advlock = VOP_NULL, /* advlock */ - .vop_lease = VOP_NULL, /* lease */ .vop_poll = vop_stdpoll, .vop_getpages = vop_stdgetpages, /* pager intf.*/ .vop_putpages = vop_stdputpages, /* pager intf.*/