handle PUFFS_VN_INACTIVE
This commit is contained in:
parent
14d708398a
commit
bda8cd7266
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: puffs.c,v 1.2 2006/10/23 00:22:24 christos Exp $ */
|
||||
/* $NetBSD: puffs.c,v 1.3 2006/10/25 18:15:50 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2006 Antti Kantee. All Rights Reserved.
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if !defined(lint)
|
||||
__RCSID("$NetBSD: puffs.c,v 1.2 2006/10/23 00:22:24 christos Exp $");
|
||||
__RCSID("$NetBSD: puffs.c,v 1.3 2006/10/25 18:15:50 pooka Exp $");
|
||||
#endif /* !lint */
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -538,6 +538,20 @@ puffcall(struct puffs_usermount *pu, struct puffs_req *preq)
|
||||
break;
|
||||
}
|
||||
|
||||
case PUFFS_VN_INACTIVE:
|
||||
{
|
||||
struct puffs_vnreq_inactive *auxt = preq->preq_aux;
|
||||
if (pu->pu_pvn.puffs_inactive == NULL) {
|
||||
error = EOPNOTSUPP;
|
||||
break;
|
||||
}
|
||||
|
||||
error = pu->pu_pvn.puffs_inactive(pu,
|
||||
preq->preq_cookie, auxt->pvnr_pid,
|
||||
&auxt->pvnr_backendrefs);
|
||||
break;
|
||||
}
|
||||
|
||||
case PUFFS_VN_PATHCONF:
|
||||
{
|
||||
struct puffs_vnreq_pathconf *auxt = preq->preq_aux;
|
||||
@ -712,19 +726,6 @@ puffcall(struct puffs_usermount *pu, struct puffs_req *preq)
|
||||
break;
|
||||
}
|
||||
|
||||
case PUFFS_VN_INACTIVE:
|
||||
{
|
||||
struct puffs_vnreq_inactive *auxt = preq->preq_aux;
|
||||
if (pu->pu_pvn.puffs_inactive == NULL) {
|
||||
error = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
error = pu->pu_pvn.puffs_inactive(pu,
|
||||
preq->preq_cookie, );
|
||||
break;
|
||||
}
|
||||
|
||||
case PUFFS_VN_LOCK:
|
||||
{
|
||||
struct puffs_vnreq_lock *auxt = preq->preq_aux;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: puffs.h,v 1.1 2006/10/22 22:52:21 pooka Exp $ */
|
||||
/* $NetBSD: puffs.h,v 1.2 2006/10/25 18:15:50 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2006 Antti Kantee. All Rights Reserved.
|
||||
@ -129,6 +129,8 @@ struct puffs_vnops {
|
||||
void *, const struct puffs_cred *, char *, size_t *);
|
||||
int (*puffs_reclaim)(struct puffs_usermount *,
|
||||
void *, pid_t);
|
||||
int (*puffs_inactive)(struct puffs_usermount *,
|
||||
void *, pid_t, int *);
|
||||
int (*puffs_print)(struct puffs_usermount *,
|
||||
void *);
|
||||
int (*puffs_pathconf)(struct puffs_usermount *,
|
||||
@ -282,6 +284,8 @@ int puffs_cred_isjuggernaut(const struct puffs_cred *pcr);
|
||||
void *, const struct puffs_cred *, char *, size_t *); \
|
||||
int fsname##_reclaim(struct puffs_usermount *, \
|
||||
void *, pid_t); \
|
||||
int fsname##_inactive(struct puffs_usermount *, \
|
||||
void *, pid_t, int *); \
|
||||
int fsname##_print(struct puffs_usermount *, \
|
||||
void *); \
|
||||
int fsname##_pathconf(struct puffs_usermount *, \
|
||||
|
Loading…
Reference in New Issue
Block a user