9p: Reorganization of 9p file system code
This patchset moves non-filesystem interfaces of v9fs from fs/9p to net/9p. It moves the transport, packet marshalling and connection layers to net/9p leaving only the VFS related files in fs/9p. This work is being done in preparation for in-kernel 9p servers as well as alternate 9p clients (other than VFS). Signed-off-by: Latchesar Ionkov <lucho@ionkov.net> Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
This commit is contained in:

committed by
Eric Van Hensbergen

parent
8d9107e8c5
commit
bd238fb431
43
fs/9p/fid.h
43
fs/9p/fid.h
@@ -22,41 +22,12 @@
|
||||
|
||||
#include <linux/list.h>
|
||||
|
||||
#define FID_OP 0
|
||||
#define FID_WALK 1
|
||||
#define FID_CREATE 2
|
||||
|
||||
struct v9fs_fid {
|
||||
struct list_head list; /* list of fids associated with a dentry */
|
||||
struct list_head active; /* XXX - debug */
|
||||
|
||||
struct semaphore lock;
|
||||
|
||||
u32 fid;
|
||||
unsigned char fidopen; /* set when fid is opened */
|
||||
unsigned char fidclunked; /* set when fid has already been clunked */
|
||||
|
||||
struct v9fs_qid qid;
|
||||
u32 iounit;
|
||||
|
||||
/* readdir stuff */
|
||||
int rdir_fpos;
|
||||
loff_t rdir_pos;
|
||||
struct v9fs_fcall *rdir_fcall;
|
||||
|
||||
/* management stuff */
|
||||
uid_t uid; /* user associated with this fid */
|
||||
|
||||
/* private data */
|
||||
struct file *filp; /* backpointer to File struct for open files */
|
||||
struct v9fs_session_info *v9ses; /* session info for this FID */
|
||||
struct v9fs_dentry {
|
||||
spinlock_t lock; /* protect fidlist */
|
||||
struct list_head fidlist;
|
||||
};
|
||||
|
||||
struct v9fs_fid *v9fs_fid_lookup(struct dentry *dentry);
|
||||
struct v9fs_fid *v9fs_fid_get_created(struct dentry *);
|
||||
void v9fs_fid_destroy(struct v9fs_fid *fid);
|
||||
struct v9fs_fid *v9fs_fid_create(struct v9fs_session_info *, int fid);
|
||||
int v9fs_fid_insert(struct v9fs_fid *fid, struct dentry *dentry);
|
||||
struct v9fs_fid *v9fs_fid_clone(struct dentry *dentry);
|
||||
void v9fs_fid_clunk(struct v9fs_session_info *v9ses, struct v9fs_fid *fid);
|
||||
|
||||
struct p9_fid *v9fs_fid_lookup(struct dentry *dentry);
|
||||
struct p9_fid *v9fs_fid_lookup_remove(struct dentry *dentry);
|
||||
struct p9_fid *v9fs_fid_clone(struct dentry *dentry);
|
||||
int v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid);
|
||||
|
Reference in New Issue
Block a user