parent
23ebf62d26
commit
535b5fed29
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: coda_namecache.c,v 1.15 2005/05/29 21:05:25 christos Exp $ */
|
||||
/* $NetBSD: coda_namecache.c,v 1.16 2005/08/30 22:24:11 xtraeme Exp $ */
|
||||
|
||||
/*
|
||||
*
|
||||
|
@ -77,7 +77,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_namecache.c,v 1.15 2005/05/29 21:05:25 christos Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_namecache.c,v 1.16 2005/08/30 22:24:11 xtraeme Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/errno.h>
|
||||
|
@ -171,12 +171,8 @@ coda_nc_init(void)
|
|||
*/
|
||||
|
||||
static struct coda_cache *
|
||||
coda_nc_find(dcp, name, namelen, cred, hash)
|
||||
struct cnode *dcp;
|
||||
const char *name;
|
||||
int namelen;
|
||||
struct ucred *cred;
|
||||
int hash;
|
||||
coda_nc_find(struct cnode *dcp, const char *name, int namelen,
|
||||
struct ucred *cred, int hash)
|
||||
{
|
||||
/*
|
||||
* hash to find the appropriate bucket, look through the chain
|
||||
|
@ -222,12 +218,8 @@ coda_nc_find(dcp, name, namelen, cred, hash)
|
|||
* LRU and Hash as needed.
|
||||
*/
|
||||
void
|
||||
coda_nc_enter(dcp, name, namelen, cred, cp)
|
||||
struct cnode *dcp;
|
||||
const char *name;
|
||||
int namelen;
|
||||
struct ucred *cred;
|
||||
struct cnode *cp;
|
||||
coda_nc_enter(struct cnode *dcp, const char *name, int namelen,
|
||||
struct ucred *cred, struct cnode *cp)
|
||||
{
|
||||
struct coda_cache *cncp;
|
||||
int hash;
|
||||
|
@ -300,11 +292,8 @@ coda_nc_enter(dcp, name, namelen, cred, cp)
|
|||
* matches the input, return it, otherwise return 0
|
||||
*/
|
||||
struct cnode *
|
||||
coda_nc_lookup(dcp, name, namelen, cred)
|
||||
struct cnode *dcp;
|
||||
const char *name;
|
||||
int namelen;
|
||||
struct ucred *cred;
|
||||
coda_nc_lookup(struct cnode *dcp, const char *name, int namelen,
|
||||
struct ucred *cred)
|
||||
{
|
||||
int hash;
|
||||
struct coda_cache *cncp;
|
||||
|
@ -350,9 +339,7 @@ coda_nc_lookup(dcp, name, namelen, cred)
|
|||
}
|
||||
|
||||
static void
|
||||
coda_nc_remove(cncp, dcstat)
|
||||
struct coda_cache *cncp;
|
||||
enum dc_status dcstat;
|
||||
coda_nc_remove(struct coda_cache *cncp, enum dc_status dcstat)
|
||||
{
|
||||
/*
|
||||
* remove an entry -- vrele(cncp->dcp, cp), crfree(cred),
|
||||
|
@ -390,9 +377,7 @@ coda_nc_remove(cncp, dcstat)
|
|||
* Remove all entries with a parent which has the input fid.
|
||||
*/
|
||||
void
|
||||
coda_nc_zapParentfid(fid, dcstat)
|
||||
CodaFid *fid;
|
||||
enum dc_status dcstat;
|
||||
coda_nc_zapParentfid(CodaFid *fid, enum dc_status dcstat)
|
||||
{
|
||||
/* To get to a specific fid, we might either have another hashing
|
||||
function or do a sequential search through the cache for the
|
||||
|
@ -433,9 +418,7 @@ coda_nc_zapParentfid(fid, dcstat)
|
|||
* Remove all entries which have the same fid as the input
|
||||
*/
|
||||
void
|
||||
coda_nc_zapfid(fid, dcstat)
|
||||
CodaFid *fid;
|
||||
enum dc_status dcstat;
|
||||
coda_nc_zapfid(CodaFid *fid, enum dc_status dcstat)
|
||||
{
|
||||
/* See comment for zapParentfid. This routine will be used
|
||||
if attributes are being cached.
|
||||
|
@ -468,10 +451,7 @@ coda_nc_zapfid(fid, dcstat)
|
|||
* Remove all entries which match the fid and the cred
|
||||
*/
|
||||
void
|
||||
coda_nc_zapvnode(fid, cred, dcstat)
|
||||
CodaFid *fid;
|
||||
struct ucred *cred;
|
||||
enum dc_status dcstat;
|
||||
coda_nc_zapvnode(CodaFid *fid, struct ucred *cred, enum dc_status dcstat)
|
||||
{
|
||||
/* See comment for zapfid. I don't think that one would ever
|
||||
want to zap a file with a specific cred from the kernel.
|
||||
|
@ -489,10 +469,7 @@ coda_nc_zapvnode(fid, cred, dcstat)
|
|||
* Remove all entries which have the (dir vnode, name) pair
|
||||
*/
|
||||
void
|
||||
coda_nc_zapfile(dcp, name, namelen)
|
||||
struct cnode *dcp;
|
||||
const char *name;
|
||||
int namelen;
|
||||
coda_nc_zapfile(struct cnode *dcp, const char *name, int namelen)
|
||||
{
|
||||
/* use the hash function to locate the file, then zap all
|
||||
entries of it regardless of the cred.
|
||||
|
@ -530,9 +507,7 @@ coda_nc_zapfile(dcp, name, namelen)
|
|||
* A user is determined by his/her effective user id (id_uid).
|
||||
*/
|
||||
void
|
||||
coda_nc_purge_user(uid, dcstat)
|
||||
uid_t uid;
|
||||
enum dc_status dcstat;
|
||||
coda_nc_purge_user(uid_t uid, enum dc_status dcstat)
|
||||
{
|
||||
/*
|
||||
* I think the best approach is to go through the entire cache
|
||||
|
@ -574,8 +549,7 @@ coda_nc_purge_user(uid, dcstat)
|
|||
* Flush the entire name cache. In response to a flush of the Venus cache.
|
||||
*/
|
||||
void
|
||||
coda_nc_flush(dcstat)
|
||||
enum dc_status dcstat;
|
||||
coda_nc_flush(enum dc_status dcstat)
|
||||
{
|
||||
/* One option is to deallocate the current name cache and
|
||||
call init to start again. Or just deallocate, then rebuild.
|
||||
|
@ -705,9 +679,7 @@ coda_nc_gather_stats(void)
|
|||
* is in an improper state (except by turning the cache off).
|
||||
*/
|
||||
int
|
||||
coda_nc_resize(hashsize, heapsize, dcstat)
|
||||
int hashsize, heapsize;
|
||||
enum dc_status dcstat;
|
||||
coda_nc_resize(int hashsize, int heapsize, enum dc_status dcstat)
|
||||
{
|
||||
if ((hashsize % 2) || (heapsize % 2)) { /* Illegal hash or cache sizes */
|
||||
return(EINVAL);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: coda_psdev.c,v 1.28 2005/05/29 21:05:25 christos Exp $ */
|
||||
/* $NetBSD: coda_psdev.c,v 1.29 2005/08/30 22:24:11 xtraeme Exp $ */
|
||||
|
||||
/*
|
||||
*
|
||||
|
@ -54,7 +54,7 @@
|
|||
/* These routines are the device entry points for Venus. */
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_psdev.c,v 1.28 2005/05/29 21:05:25 christos Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_psdev.c,v 1.29 2005/08/30 22:24:11 xtraeme Exp $");
|
||||
|
||||
extern int coda_nc_initialized; /* Set if cache has been initialized */
|
||||
|
||||
|
@ -128,8 +128,7 @@ struct vmsg {
|
|||
|
||||
/* vcodaattach: do nothing */
|
||||
void
|
||||
vcodaattach(n)
|
||||
int n;
|
||||
vcodaattach(int n)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -137,11 +136,7 @@ vcodaattach(n)
|
|||
* These functions are written for NetBSD.
|
||||
*/
|
||||
int
|
||||
vc_nb_open(dev, flag, mode, p)
|
||||
dev_t dev;
|
||||
int flag;
|
||||
int mode;
|
||||
struct proc *p; /* NetBSD only */
|
||||
vc_nb_open(dev_t dev, int flag, int mode, struct proc *p /* NetBSD only */)
|
||||
{
|
||||
struct vcomm *vcp;
|
||||
|
||||
|
@ -169,11 +164,7 @@ vc_nb_open(dev, flag, mode, p)
|
|||
}
|
||||
|
||||
int
|
||||
vc_nb_close (dev, flag, mode, p)
|
||||
dev_t dev;
|
||||
int flag;
|
||||
int mode;
|
||||
struct proc *p;
|
||||
vc_nb_close(dev_t dev, int flag, int mode, struct proc *p)
|
||||
{
|
||||
struct vcomm *vcp;
|
||||
struct vmsg *vmp, *nvmp = NULL;
|
||||
|
@ -261,10 +252,7 @@ vc_nb_close (dev, flag, mode, p)
|
|||
}
|
||||
|
||||
int
|
||||
vc_nb_read(dev, uiop, flag)
|
||||
dev_t dev;
|
||||
struct uio *uiop;
|
||||
int flag;
|
||||
vc_nb_read(dev_t dev, struct uio *uiop, int flag)
|
||||
{
|
||||
struct vcomm * vcp;
|
||||
struct vmsg *vmp;
|
||||
|
@ -315,10 +303,7 @@ vc_nb_read(dev, uiop, flag)
|
|||
}
|
||||
|
||||
int
|
||||
vc_nb_write(dev, uiop, flag)
|
||||
dev_t dev;
|
||||
struct uio *uiop;
|
||||
int flag;
|
||||
vc_nb_write(dev_t dev, struct uio *uiop, int flag)
|
||||
{
|
||||
struct vcomm * vcp;
|
||||
struct vmsg *vmp;
|
||||
|
@ -415,12 +400,7 @@ vc_nb_write(dev, uiop, flag)
|
|||
}
|
||||
|
||||
int
|
||||
vc_nb_ioctl(dev, cmd, addr, flag, p)
|
||||
dev_t dev;
|
||||
u_long cmd;
|
||||
caddr_t addr;
|
||||
int flag;
|
||||
struct proc *p;
|
||||
vc_nb_ioctl(dev_t dev, u_long cmd, caddr_t addr, int flag, struct proc *p)
|
||||
{
|
||||
ENTRY;
|
||||
|
||||
|
@ -469,10 +449,7 @@ vc_nb_ioctl(dev, cmd, addr, flag, p)
|
|||
}
|
||||
|
||||
int
|
||||
vc_nb_poll(dev, events, p)
|
||||
dev_t dev;
|
||||
int events;
|
||||
struct proc *p;
|
||||
vc_nb_poll(dev_t dev, int events, struct proc *p)
|
||||
{
|
||||
struct vcomm *vcp;
|
||||
int event_msk = 0;
|
||||
|
@ -567,8 +544,8 @@ struct coda_clstat coda_clstat;
|
|||
*/
|
||||
|
||||
int
|
||||
coda_call(mntinfo, inSize, outSize, buffer)
|
||||
struct coda_mntinfo *mntinfo; int inSize; int *outSize; caddr_t buffer;
|
||||
coda_call(struct coda_mntinfo *mntinfo, int inSize, int outSize,
|
||||
caddr_t buffer)
|
||||
{
|
||||
struct vcomm *vcp;
|
||||
struct vmsg *vmp;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: coda_subr.c,v 1.17 2005/02/26 23:04:16 perry Exp $ */
|
||||
/* $NetBSD: coda_subr.c,v 1.18 2005/08/30 22:24:11 xtraeme Exp $ */
|
||||
|
||||
/*
|
||||
*
|
||||
|
@ -55,7 +55,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_subr.c,v 1.17 2005/02/26 23:04:16 perry Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_subr.c,v 1.18 2005/08/30 22:24:11 xtraeme Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -122,8 +122,7 @@ coda_alloc(void)
|
|||
* Deallocate a cnode.
|
||||
*/
|
||||
void
|
||||
coda_free(cp)
|
||||
struct cnode *cp;
|
||||
coda_free(struct cnode *cp)
|
||||
{
|
||||
|
||||
CNODE_NEXT(cp) = coda_freelist;
|
||||
|
@ -134,8 +133,7 @@ coda_free(cp)
|
|||
* Put a cnode in the hash table
|
||||
*/
|
||||
void
|
||||
coda_save(cp)
|
||||
struct cnode *cp;
|
||||
coda_save(struct cnode *cp)
|
||||
{
|
||||
CNODE_NEXT(cp) = coda_cache[coda_hash(&cp->c_fid)];
|
||||
coda_cache[coda_hash(&cp->c_fid)] = cp;
|
||||
|
@ -145,8 +143,7 @@ coda_save(cp)
|
|||
* Remove a cnode from the hash table
|
||||
*/
|
||||
void
|
||||
coda_unsave(cp)
|
||||
struct cnode *cp;
|
||||
coda_unsave(struct cnode *cp)
|
||||
{
|
||||
struct cnode *ptr;
|
||||
struct cnode *ptrprev = NULL;
|
||||
|
@ -174,8 +171,7 @@ coda_unsave(cp)
|
|||
* NOTE: this allows multiple cnodes with same fid -- dcs 1/25/95
|
||||
*/
|
||||
struct cnode *
|
||||
coda_find(fid)
|
||||
CodaFid *fid;
|
||||
coda_find(CodaFid *fid)
|
||||
{
|
||||
struct cnode *cp;
|
||||
|
||||
|
@ -202,9 +198,7 @@ coda_find(fid)
|
|||
* coda_mnttbl. -- DCS 12/1/94 */
|
||||
|
||||
int
|
||||
coda_kill(whoIam, dcstat)
|
||||
struct mount *whoIam;
|
||||
enum dc_status dcstat;
|
||||
coda_kill(struct mount *whoIam, enum dc_status dcstat)
|
||||
{
|
||||
int hash, count = 0;
|
||||
struct cnode *cp;
|
||||
|
@ -246,8 +240,7 @@ coda_kill(whoIam, dcstat)
|
|||
* name cache or it may be executing.
|
||||
*/
|
||||
void
|
||||
coda_flush(dcstat)
|
||||
enum dc_status dcstat;
|
||||
coda_flush(enum dc_status dcstat)
|
||||
{
|
||||
int hash;
|
||||
struct cnode *cp;
|
||||
|
@ -292,8 +285,7 @@ coda_testflush(void)
|
|||
*
|
||||
*/
|
||||
void
|
||||
coda_unmounting(whoIam)
|
||||
struct mount *whoIam;
|
||||
coda_unmounting(struct mount *whoIam)
|
||||
{
|
||||
int hash;
|
||||
struct cnode *cp;
|
||||
|
@ -314,8 +306,7 @@ coda_unmounting(whoIam)
|
|||
|
||||
#ifdef DEBUG
|
||||
void
|
||||
coda_checkunmounting(mp)
|
||||
struct mount *mp;
|
||||
coda_checkunmounting(struct mount *mp)
|
||||
{
|
||||
struct vnode *vp, *nvp;
|
||||
struct cnode *cp;
|
||||
|
@ -336,8 +327,7 @@ loop:
|
|||
}
|
||||
|
||||
void
|
||||
coda_cacheprint(whoIam)
|
||||
struct mount *whoIam;
|
||||
coda_cacheprint(struct mount *whoIam)
|
||||
{
|
||||
int hash;
|
||||
struct cnode *cp;
|
||||
|
@ -386,8 +376,7 @@ coda_cacheprint(whoIam)
|
|||
* CODA_REPLACE -- replace one CodaFid with another throughout the name cache
|
||||
*/
|
||||
|
||||
int handleDownCall(opcode, out)
|
||||
int opcode; union outputArgs *out;
|
||||
int handleDownCall(int opcode, union outputArgs *out)
|
||||
{
|
||||
int error;
|
||||
|
||||
|
@ -528,8 +517,7 @@ int handleDownCall(opcode, out)
|
|||
/* coda_grab_vnode: lives in either cfs_mach.c or cfs_nbsd.c */
|
||||
|
||||
int
|
||||
coda_vmflush(cp)
|
||||
struct cnode *cp;
|
||||
coda_vmflush(struct cnode *cp)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: coda_vfsops.c,v 1.44 2005/07/02 07:05:27 blymn Exp $ */
|
||||
/* $NetBSD: coda_vfsops.c,v 1.45 2005/08/30 22:24:11 xtraeme Exp $ */
|
||||
|
||||
/*
|
||||
*
|
||||
|
@ -45,7 +45,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_vfsops.c,v 1.44 2005/07/02 07:05:27 blymn Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_vfsops.c,v 1.45 2005/08/30 22:24:11 xtraeme Exp $");
|
||||
|
||||
#ifdef _LKM
|
||||
#define NVCODA 4
|
||||
|
@ -150,12 +150,11 @@ coda_vfsopstats_init(void)
|
|||
*/
|
||||
/*ARGSUSED*/
|
||||
int
|
||||
coda_mount(vfsp, path, data, ndp, p)
|
||||
struct mount *vfsp; /* Allocated and initialized by mount(2) */
|
||||
const char *path; /* path covered: ignored by the fs-layer */
|
||||
void *data; /* Need to define a data type for this in netbsd? */
|
||||
struct nameidata *ndp; /* Clobber this to lookup the device name */
|
||||
struct proc *p; /* The ever-famous proc pointer */
|
||||
coda_mount(struct mount *vfsp, /* Allocated and initialized by mount(2) */
|
||||
const char *path, /* path covered: ignored by the fs-layer */
|
||||
void *data, /* Need to define a data type for this in netbsd? */
|
||||
struct nameidata *ndp, /* Clobber this to lookup the device name */
|
||||
struct proc *p) /* The ever-famous proc pointer */
|
||||
{
|
||||
struct vnode *dvp;
|
||||
struct cnode *cp;
|
||||
|
@ -275,10 +274,7 @@ coda_mount(vfsp, path, data, ndp, p)
|
|||
}
|
||||
|
||||
int
|
||||
coda_start(vfsp, flags, p)
|
||||
struct mount *vfsp;
|
||||
int flags;
|
||||
struct proc *p;
|
||||
coda_start(struct mount *vfsp, int flags, struct proc *p)
|
||||
{
|
||||
ENTRY;
|
||||
vftomi(vfsp)->mi_started = 1;
|
||||
|
@ -286,10 +282,7 @@ coda_start(vfsp, flags, p)
|
|||
}
|
||||
|
||||
int
|
||||
coda_unmount(vfsp, mntflags, p)
|
||||
struct mount *vfsp;
|
||||
int mntflags;
|
||||
struct proc *p;
|
||||
coda_unmount(struct mount *vfsp, int mntflags, struct proc *p)
|
||||
{
|
||||
struct coda_mntinfo *mi = vftomi(vfsp);
|
||||
int active, error = 0;
|
||||
|
@ -341,9 +334,7 @@ coda_unmount(vfsp, mntflags, p)
|
|||
* find root of cfs
|
||||
*/
|
||||
int
|
||||
coda_root(vfsp, vpp)
|
||||
struct mount *vfsp;
|
||||
struct vnode **vpp;
|
||||
coda_root(struct mount *vfsp, struct vnode **vpp)
|
||||
{
|
||||
struct coda_mntinfo *mi = vftomi(vfsp);
|
||||
int error;
|
||||
|
@ -409,12 +400,8 @@ coda_root(vfsp, vpp)
|
|||
}
|
||||
|
||||
int
|
||||
coda_quotactl(vfsp, cmd, uid, arg, p)
|
||||
struct mount *vfsp;
|
||||
int cmd;
|
||||
uid_t uid;
|
||||
void *arg;
|
||||
struct proc *p;
|
||||
coda_quotactl(struct mount *vfsp, int cmd, uid_t uid, void *arg,
|
||||
struct proc *p)
|
||||
{
|
||||
ENTRY;
|
||||
return (EOPNOTSUPP);
|
||||
|
@ -424,10 +411,7 @@ coda_quotactl(vfsp, cmd, uid, arg, p)
|
|||
* Get file system statistics.
|
||||
*/
|
||||
int
|
||||
coda_nb_statvfs(vfsp, sbp, p)
|
||||
struct mount *vfsp;
|
||||
struct statvfs *sbp;
|
||||
struct proc *p;
|
||||
coda_nb_statvfs(struct mount *vfsp, struct statvfs *sbp, struct proc *p)
|
||||
{
|
||||
struct coda_statfs fsstat;
|
||||
int error;
|
||||
|
@ -470,11 +454,7 @@ coda_nb_statvfs(vfsp, sbp, p)
|
|||
* Flush any pending I/O.
|
||||
*/
|
||||
int
|
||||
coda_sync(vfsp, waitfor, cred, p)
|
||||
struct mount *vfsp;
|
||||
int waitfor;
|
||||
struct ucred *cred;
|
||||
struct proc *p;
|
||||
coda_sync(struct mount *vfsp, int waitfor, struct ucred *cred, struct proc *p)
|
||||
{
|
||||
ENTRY;
|
||||
MARK_ENTRY(CODA_SYNC_STATS);
|
||||
|
@ -483,10 +463,7 @@ coda_sync(vfsp, waitfor, cred, p)
|
|||
}
|
||||
|
||||
int
|
||||
coda_vget(vfsp, ino, vpp)
|
||||
struct mount *vfsp;
|
||||
ino_t ino;
|
||||
struct vnode **vpp;
|
||||
coda_vget(struct mount *vfsp, ino_t ino, struct vnode **vpp)
|
||||
{
|
||||
ENTRY;
|
||||
return (EOPNOTSUPP);
|
||||
|
@ -498,13 +475,8 @@ coda_vget(vfsp, ino, vpp)
|
|||
* a type-specific fid.
|
||||
*/
|
||||
int
|
||||
coda_fhtovp(vfsp, fhp, nam, vpp, exflagsp, creadanonp)
|
||||
struct mount *vfsp;
|
||||
struct fid *fhp;
|
||||
struct mbuf *nam;
|
||||
struct vnode **vpp;
|
||||
int *exflagsp;
|
||||
struct ucred **creadanonp;
|
||||
coda_fhtovp(struct mount *vfsp, struct fid *fhp, struct mbuf *nam,
|
||||
struct vnode **vpp, int *exflagsp, struct ucred **creadanonp)
|
||||
{
|
||||
struct cfid *cfid = (struct cfid *)fhp;
|
||||
struct cnode *cp = 0;
|
||||
|
@ -541,9 +513,7 @@ coda_fhtovp(vfsp, fhp, nam, vpp, exflagsp, creadanonp)
|
|||
}
|
||||
|
||||
int
|
||||
coda_vptofh(vnp, fidp)
|
||||
struct vnode *vnp;
|
||||
struct fid *fidp;
|
||||
coda_vptofh(struct vnode *vnp, struct fid *fidp)
|
||||
{
|
||||
ENTRY;
|
||||
return (EOPNOTSUPP);
|
||||
|
@ -598,8 +568,7 @@ SYSCTL_SETUP(sysctl_vfs_coda_setup, "sysctl vfs.coda subtree setup")
|
|||
*/
|
||||
|
||||
int
|
||||
getNewVnode(vpp)
|
||||
struct vnode **vpp;
|
||||
getNewVnode(struct vnode **vpp)
|
||||
{
|
||||
struct cfid cfid;
|
||||
struct coda_mntinfo *mi = vftomi((*vpp)->v_mount);
|
||||
|
@ -625,8 +594,7 @@ getNewVnode(vpp)
|
|||
/* get the mount structure corresponding to a given device. Assume
|
||||
* device corresponds to a UFS. Return NULL if no device is found.
|
||||
*/
|
||||
struct mount *devtomp(dev)
|
||||
dev_t dev;
|
||||
struct mount *devtomp(dev_t dev)
|
||||
{
|
||||
struct mount *mp, *nmp;
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ mkdir
|
|||
rmdir
|
||||
symlink
|
||||
*/
|
||||
/* $NetBSD: coda_vnops.c,v 1.42 2005/08/19 02:03:57 christos Exp $ */
|
||||
/* $NetBSD: coda_vnops.c,v 1.43 2005/08/30 22:24:11 xtraeme Exp $ */
|
||||
|
||||
/*
|
||||
*
|
||||
|
@ -54,7 +54,7 @@ symlink
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_vnops.c,v 1.42 2005/08/19 02:03:57 christos Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: coda_vnops.c,v 1.43 2005/08/30 22:24:11 xtraeme Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -217,8 +217,7 @@ coda_vnodeopstats_init(void)
|
|||
* cache file, and then opens it.
|
||||
*/
|
||||
int
|
||||
coda_open(v)
|
||||
void *v;
|
||||
coda_open(void *v)
|
||||
{
|
||||
/*
|
||||
* NetBSD can pass the O_EXCL flag in mode, even though the check
|
||||
|
@ -300,8 +299,7 @@ coda_open(v)
|
|||
* Close the cache file used for I/O and notify Venus.
|
||||
*/
|
||||
int
|
||||
coda_close(v)
|
||||
void *v;
|
||||
coda_close(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_close_args *ap = v;
|
||||
|
@ -360,8 +358,7 @@ coda_close(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_read(v)
|
||||
void *v;
|
||||
coda_read(void *v)
|
||||
{
|
||||
struct vop_read_args *ap = v;
|
||||
|
||||
|
@ -371,8 +368,7 @@ coda_read(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_write(v)
|
||||
void *v;
|
||||
coda_write(void *v)
|
||||
{
|
||||
struct vop_write_args *ap = v;
|
||||
|
||||
|
@ -382,13 +378,8 @@ coda_write(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_rdwr(vp, uiop, rw, ioflag, cred, p)
|
||||
struct vnode *vp;
|
||||
struct uio *uiop;
|
||||
enum uio_rw rw;
|
||||
int ioflag;
|
||||
struct ucred *cred;
|
||||
struct proc *p;
|
||||
coda_rdwr(struct vnode *vp, struct uio *uiop, enum uio_rw rw, int ioflag,
|
||||
struct ucred *cred, struct proc *p)
|
||||
{
|
||||
/* upcall decl */
|
||||
/* NOTE: container file operation!!! */
|
||||
|
@ -482,8 +473,7 @@ printf("coda_rdwr: Internally Opening %p\n", vp);
|
|||
}
|
||||
|
||||
int
|
||||
coda_ioctl(v)
|
||||
void *v;
|
||||
coda_ioctl(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_ioctl_args *ap = v;
|
||||
|
@ -568,8 +558,7 @@ coda_ioctl(v)
|
|||
* opened the file, and therefore should already have access.
|
||||
*/
|
||||
int
|
||||
coda_getattr(v)
|
||||
void *v;
|
||||
coda_getattr(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_getattr_args *ap = v;
|
||||
|
@ -621,8 +610,7 @@ coda_getattr(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_setattr(v)
|
||||
void *v;
|
||||
coda_setattr(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_setattr_args *ap = v;
|
||||
|
@ -655,8 +643,7 @@ coda_setattr(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_access(v)
|
||||
void *v;
|
||||
coda_access(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_access_args *ap = v;
|
||||
|
@ -705,8 +692,7 @@ coda_access(v)
|
|||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
coda_abortop(v)
|
||||
void *v;
|
||||
coda_abortop(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_abortop_args /* {
|
||||
|
@ -722,8 +708,7 @@ coda_abortop(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_readlink(v)
|
||||
void *v;
|
||||
coda_readlink(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_readlink_args *ap = v;
|
||||
|
@ -774,8 +759,7 @@ coda_readlink(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_fsync(v)
|
||||
void *v;
|
||||
coda_fsync(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_fsync_args *ap = v;
|
||||
|
@ -825,8 +809,7 @@ coda_fsync(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_inactive(v)
|
||||
void *v;
|
||||
coda_inactive(void *v)
|
||||
{
|
||||
/* XXX - at the moment, inactive doesn't look at cred, and doesn't
|
||||
have a proc pointer. Oops. */
|
||||
|
@ -900,8 +883,7 @@ coda_inactive(v)
|
|||
* It appears that in NetBSD, lookup is supposed to return the vnode locked
|
||||
*/
|
||||
int
|
||||
coda_lookup(v)
|
||||
void *v;
|
||||
coda_lookup(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_lookup_args *ap = v;
|
||||
|
@ -1063,8 +1045,7 @@ coda_lookup(v)
|
|||
|
||||
/*ARGSUSED*/
|
||||
int
|
||||
coda_create(v)
|
||||
void *v;
|
||||
coda_create(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_create_args *ap = v;
|
||||
|
@ -1168,8 +1149,7 @@ coda_create(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_remove(v)
|
||||
void *v;
|
||||
coda_remove(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_remove_args *ap = v;
|
||||
|
@ -1242,8 +1222,7 @@ coda_remove(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_link(v)
|
||||
void *v;
|
||||
coda_link(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_link_args *ap = v;
|
||||
|
@ -1321,8 +1300,7 @@ exit:
|
|||
}
|
||||
|
||||
int
|
||||
coda_rename(v)
|
||||
void *v;
|
||||
coda_rename(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_rename_args *ap = v;
|
||||
|
@ -1416,8 +1394,7 @@ coda_rename(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_mkdir(v)
|
||||
void *v;
|
||||
coda_mkdir(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_mkdir_args *ap = v;
|
||||
|
@ -1508,8 +1485,7 @@ coda_mkdir(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_rmdir(v)
|
||||
void *v;
|
||||
coda_rmdir(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_rmdir_args *ap = v;
|
||||
|
@ -1571,8 +1547,7 @@ coda_rmdir(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_symlink(v)
|
||||
void *v;
|
||||
coda_symlink(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_symlink_args *ap = v;
|
||||
|
@ -1664,8 +1639,7 @@ coda_symlink(v)
|
|||
* Read directory entries.
|
||||
*/
|
||||
int
|
||||
coda_readdir(v)
|
||||
void *v;
|
||||
coda_readdir(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_readdir_args *ap = v;
|
||||
|
@ -1731,8 +1705,7 @@ printf("coda_readdir: Internally Opening %p\n", vp);
|
|||
* Convert from file system blocks to device blocks
|
||||
*/
|
||||
int
|
||||
coda_bmap(v)
|
||||
void *v;
|
||||
coda_bmap(void *v)
|
||||
{
|
||||
/* XXX on the global proc */
|
||||
/* true args */
|
||||
|
@ -1758,8 +1731,7 @@ coda_bmap(v)
|
|||
* int async_daemon_count;
|
||||
*/
|
||||
int
|
||||
coda_strategy(v)
|
||||
void *v;
|
||||
coda_strategy(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_strategy_args *ap = v;
|
||||
|
@ -1773,8 +1745,7 @@ coda_strategy(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_reclaim(v)
|
||||
void *v;
|
||||
coda_reclaim(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_reclaim_args *ap = v;
|
||||
|
@ -1811,8 +1782,7 @@ coda_reclaim(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_lock(v)
|
||||
void *v;
|
||||
coda_lock(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_lock_args *ap = v;
|
||||
|
@ -1832,8 +1802,7 @@ coda_lock(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_unlock(v)
|
||||
void *v;
|
||||
coda_unlock(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_unlock_args *ap = v;
|
||||
|
@ -1852,8 +1821,7 @@ coda_unlock(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_islocked(v)
|
||||
void *v;
|
||||
coda_islocked(void *v)
|
||||
{
|
||||
/* true args */
|
||||
struct vop_islocked_args *ap = v;
|
||||
|
@ -1886,8 +1854,7 @@ coda_grab_vnode(dev_t dev, ino_t ino, struct vnode **vpp)
|
|||
}
|
||||
|
||||
void
|
||||
print_vattr( attr )
|
||||
struct vattr *attr;
|
||||
print_vattr(struct vattr *attr)
|
||||
{
|
||||
const char *typestr;
|
||||
|
||||
|
@ -1945,8 +1912,7 @@ print_vattr( attr )
|
|||
|
||||
/* How to print a ucred */
|
||||
void
|
||||
print_cred(cred)
|
||||
struct ucred *cred;
|
||||
print_cred(struct ucred *cred)
|
||||
{
|
||||
|
||||
int i;
|
||||
|
@ -1968,8 +1934,7 @@ print_cred(cred)
|
|||
* table when coda_inactive calls coda_unsave.
|
||||
*/
|
||||
struct cnode *
|
||||
make_coda_node(fid, vfsp, type)
|
||||
CodaFid *fid; struct mount *vfsp; short type;
|
||||
make_coda_node(CodaFid *fid, struct mount *vfsp, short type)
|
||||
{
|
||||
struct cnode *cp;
|
||||
int err;
|
||||
|
@ -1997,8 +1962,7 @@ make_coda_node(fid, vfsp, type)
|
|||
}
|
||||
|
||||
int
|
||||
coda_getpages(v)
|
||||
void *v;
|
||||
coda_getpages(void *v)
|
||||
{
|
||||
struct vop_getpages_args /* {
|
||||
struct vnode *a_vp;
|
||||
|
@ -2032,8 +1996,7 @@ coda_getpages(v)
|
|||
}
|
||||
|
||||
int
|
||||
coda_putpages(v)
|
||||
void *v;
|
||||
coda_putpages(void *v)
|
||||
{
|
||||
struct vop_putpages_args /* {
|
||||
struct vnode *a_vp;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: coda_vnops.h,v 1.10 2005/02/26 23:04:16 perry Exp $ */
|
||||
/* $NetBSD: coda_vnops.h,v 1.11 2005/08/30 22:24:11 xtraeme Exp $ */
|
||||
|
||||
/*
|
||||
*
|
||||
|
@ -46,38 +46,38 @@
|
|||
*/
|
||||
|
||||
/* NetBSD interfaces to the vnodeops */
|
||||
int coda_open __P((void *));
|
||||
int coda_close __P((void *));
|
||||
int coda_read __P((void *));
|
||||
int coda_write __P((void *));
|
||||
int coda_ioctl __P((void *));
|
||||
/* 1.3 int coda_select __P((void *));*/
|
||||
int coda_getattr __P((void *));
|
||||
int coda_setattr __P((void *));
|
||||
int coda_access __P((void *));
|
||||
int coda_abortop __P((void *));
|
||||
int coda_readlink __P((void *));
|
||||
int coda_fsync __P((void *));
|
||||
int coda_inactive __P((void *));
|
||||
int coda_lookup __P((void *));
|
||||
int coda_create __P((void *));
|
||||
int coda_remove __P((void *));
|
||||
int coda_link __P((void *));
|
||||
int coda_rename __P((void *));
|
||||
int coda_mkdir __P((void *));
|
||||
int coda_rmdir __P((void *));
|
||||
int coda_symlink __P((void *));
|
||||
int coda_readdir __P((void *));
|
||||
int coda_bmap __P((void *));
|
||||
int coda_strategy __P((void *));
|
||||
int coda_reclaim __P((void *));
|
||||
int coda_lock __P((void *));
|
||||
int coda_unlock __P((void *));
|
||||
int coda_islocked __P((void *));
|
||||
int coda_vop_error __P((void *));
|
||||
int coda_vop_nop __P((void *));
|
||||
int coda_getpages __P((void *));
|
||||
int coda_putpages __P((void *));
|
||||
int coda_open(void *);
|
||||
int coda_close(void *);
|
||||
int coda_read(void *);
|
||||
int coda_write(void *);
|
||||
int coda_ioctl(void *);
|
||||
/* 1.3 int coda_select(void *);*/
|
||||
int coda_getattr(void *);
|
||||
int coda_setattr(void *);
|
||||
int coda_access(void *);
|
||||
int coda_abortop(void *);
|
||||
int coda_readlink(void *);
|
||||
int coda_fsync(void *);
|
||||
int coda_inactive(void *);
|
||||
int coda_lookup(void *);
|
||||
int coda_create(void *);
|
||||
int coda_remove(void *);
|
||||
int coda_link(void *);
|
||||
int coda_rename(void *);
|
||||
int coda_mkdir(void *);
|
||||
int coda_rmdir(void *);
|
||||
int coda_symlink(void *);
|
||||
int coda_readdir(void *);
|
||||
int coda_bmap(void *);
|
||||
int coda_strategy(void *);
|
||||
int coda_reclaim(void *);
|
||||
int coda_lock(void *);
|
||||
int coda_unlock(void *);
|
||||
int coda_islocked(void *);
|
||||
int coda_vop_error(void *);
|
||||
int coda_vop_nop(void *);
|
||||
int coda_getpages(void *);
|
||||
int coda_putpages(void *);
|
||||
|
||||
int (**coda_vnodeop_p)(void *);
|
||||
int coda_rdwr(struct vnode *vp, struct uio *uiop, enum uio_rw rw,
|
||||
|
|
Loading…
Reference in New Issue