Blame view

fs/9p/fid.h 1.79 KB
3ed8491c8   Eric Van Hensbergen   [PATCH] v9fs: deb...
1
2
3
4
5
6
  /*
   * V9FS FID Management
   *
   *  Copyright (C) 2005 by Eric Van Hensbergen <ericvh@gmail.com>
   *
   *  This program is free software; you can redistribute it and/or modify
42e8c509c   Eric Van Hensbergen   [PATCH] v9fs: upd...
7
8
   *  it under the terms of the GNU General Public License version 2
   *  as published by the Free Software Foundation.
3ed8491c8   Eric Van Hensbergen   [PATCH] v9fs: deb...
9
10
11
12
13
14
15
16
17
18
19
20
21
   *
   *  This program is distributed in the hope that it will be useful,
   *  but WITHOUT ANY WARRANTY; without even the implied warranty of
   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   *  GNU General Public License for more details.
   *
   *  You should have received a copy of the GNU General Public License
   *  along with this program; if not, write to:
   *  Free Software Foundation
   *  51 Franklin Street, Fifth Floor
   *  Boston, MA  02111-1301  USA
   *
   */
e0459f57b   Aneesh Kumar K.V   fs/9p: Prevent mu...
22
23
  #ifndef FS_9P_FID_H
  #define FS_9P_FID_H
3ed8491c8   Eric Van Hensbergen   [PATCH] v9fs: deb...
24
  #include <linux/list.h>
ee443996a   Eric Van Hensbergen   9p: Documentation...
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  /**
   * struct v9fs_dentry - 9p private data stored in dentry d_fsdata
   * @lock: protects the fidlist
   * @fidlist: list of FIDs currently associated with this dentry
   *
   * This structure defines the 9p private data associated with
   * a particular dentry.  In particular, this private data is used
   * to lookup which 9P FID handle should be used for a particular VFS
   * operation.  FID handles are associated with dentries instead of
   * inodes in order to more closely map functionality to the Plan 9
   * expected behavior for FID reclaimation and tracking.
   *
   * See Also: Mapping FIDs to Linux VFS model in
   * Design and Implementation of the Linux 9P File System documentation
   */
bd238fb43   Latchesar Ionkov   9p: Reorganizatio...
40
41
42
  struct v9fs_dentry {
  	spinlock_t lock; /* protect fidlist */
  	struct list_head fidlist;
3ed8491c8   Eric Van Hensbergen   [PATCH] v9fs: deb...
43
  };
bd238fb43   Latchesar Ionkov   9p: Reorganizatio...
44
  struct p9_fid *v9fs_fid_lookup(struct dentry *dentry);
bd238fb43   Latchesar Ionkov   9p: Reorganizatio...
45
46
  struct p9_fid *v9fs_fid_clone(struct dentry *dentry);
  int v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid);
3cf387d78   Aneesh Kumar K.V   fs/9p: Add fid to...
47
  struct p9_fid *v9fs_writeback_fid(struct dentry *dentry);
e0459f57b   Aneesh Kumar K.V   fs/9p: Prevent mu...
48
  #endif