Kill VOP_CREATEVOBJECT(), it is now the responsibility of the filesystem
for a given vnode to create a vnode_pager object if one is needed.
This commit is contained in:
parent
2a967a99c3
commit
69816ea35e
@ -140,7 +140,6 @@ struct vop_vector coda_vnodeops = {
|
||||
.vop_poll = vop_stdpoll,
|
||||
.vop_getpages = vop_stdgetpages, /* pager intf.*/
|
||||
.vop_putpages = vop_stdputpages, /* pager intf.*/
|
||||
.vop_createvobject = vop_stdcreatevobject,
|
||||
.vop_destroyvobject = vop_stddestroyvobject,
|
||||
.vop_getvobject = vop_stdgetvobject,
|
||||
.vop_getwritemount = vop_stdgetwritemount,
|
||||
|
@ -140,7 +140,6 @@ struct vop_vector coda_vnodeops = {
|
||||
.vop_poll = vop_stdpoll,
|
||||
.vop_getpages = vop_stdgetpages, /* pager intf.*/
|
||||
.vop_putpages = vop_stdputpages, /* pager intf.*/
|
||||
.vop_createvobject = vop_stdcreatevobject,
|
||||
.vop_destroyvobject = vop_stddestroyvobject,
|
||||
.vop_getvobject = vop_stdgetvobject,
|
||||
.vop_getwritemount = vop_stdgetwritemount,
|
||||
|
@ -74,7 +74,6 @@ static vop_advlock_t union_advlock;
|
||||
static vop_close_t union_close;
|
||||
static vop_closeextattr_t union_closeextattr;
|
||||
static vop_create_t union_create;
|
||||
static vop_createvobject_t union_createvobject;
|
||||
static vop_deleteextattr_t union_deleteextattr;
|
||||
static vop_destroyvobject_t union_destroyvobject;
|
||||
static vop_fsync_t union_fsync;
|
||||
@ -1693,22 +1692,6 @@ union_reclaim(ap)
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* unionvp do not hold a VM object and there is no need to create one for
|
||||
* upper or lower vp because it is done in the union_open()
|
||||
*/
|
||||
static int
|
||||
union_createvobject(ap)
|
||||
struct vop_createvobject_args /* {
|
||||
struct vnode *vp;
|
||||
struct ucred *cred;
|
||||
struct thread *td;
|
||||
} */ *ap;
|
||||
{
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* We have nothing to destroy and this operation shouldn't be bypassed.
|
||||
*/
|
||||
@ -2053,7 +2036,6 @@ struct vop_vector union_vnodeops = {
|
||||
.vop_close = union_close,
|
||||
.vop_closeextattr = union_closeextattr,
|
||||
.vop_create = union_create,
|
||||
.vop_createvobject = union_createvobject,
|
||||
.vop_deleteextattr = union_deleteextattr,
|
||||
.vop_destroyvobject = union_destroyvobject,
|
||||
.vop_fsync = union_fsync,
|
||||
|
@ -77,7 +77,6 @@ struct vop_vector default_vnodeops = {
|
||||
.vop_advlock = VOP_EINVAL,
|
||||
.vop_bmap = vop_stdbmap,
|
||||
.vop_close = VOP_NULL,
|
||||
.vop_createvobject = vop_stdcreatevobject,
|
||||
.vop_destroyvobject = vop_stddestroyvobject,
|
||||
.vop_fsync = VOP_NULL,
|
||||
.vop_getpages = vop_stdgetpages,
|
||||
@ -361,19 +360,6 @@ vop_stdgetwritemount(ap)
|
||||
return (0);
|
||||
}
|
||||
|
||||
/* Create the VM system backing object for this vnode */
|
||||
int
|
||||
vop_stdcreatevobject(ap)
|
||||
struct vop_createvobject_args /* {
|
||||
struct vnode *vp;
|
||||
struct ucred *cred;
|
||||
struct thread *td;
|
||||
} */ *ap;
|
||||
{
|
||||
|
||||
return (vnode_create_vobject(ap->a_vp, 0, ap->a_td));
|
||||
}
|
||||
|
||||
/* Destroy the VM system object associated with this vnode */
|
||||
int
|
||||
vop_stddestroyvobject(ap)
|
||||
|
@ -566,15 +566,6 @@ vop_setextattr {
|
||||
IN struct thread *td;
|
||||
};
|
||||
|
||||
#
|
||||
#% createvobject vp L L L
|
||||
#
|
||||
vop_createvobject {
|
||||
IN struct vnode *vp;
|
||||
IN struct ucred *cred;
|
||||
IN struct thread *td;
|
||||
};
|
||||
|
||||
#
|
||||
#% destroyvobject vp L L L
|
||||
#
|
||||
|
@ -676,7 +676,6 @@ int vop_einval(struct vop_generic_args *ap);
|
||||
int vop_enotty(struct vop_generic_args *ap);
|
||||
int vop_null(struct vop_generic_args *ap);
|
||||
int vop_panic(struct vop_generic_args *ap);
|
||||
int vop_stdcreatevobject(struct vop_createvobject_args *ap);
|
||||
int vop_stddestroyvobject(struct vop_destroyvobject_args *ap);
|
||||
int vop_stdgetvobject(struct vop_getvobject_args *ap);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user