fix iov_iter_fault_in_readable()
[linux-2.6-block.git] / include / linux / fs_pin.h
CommitLineData
59eda0e0 1#include <linux/wait.h>
efb170c2
AV
2
3struct fs_pin {
59eda0e0
AV
4 wait_queue_head_t wait;
5 int done;
34cece2e
AV
6 struct hlist_node s_list;
7 struct hlist_node m_list;
efb170c2
AV
8 void (*kill)(struct fs_pin *);
9};
10
59eda0e0
AV
11struct vfsmount;
12
13static inline void init_fs_pin(struct fs_pin *p, void (*kill)(struct fs_pin *))
14{
15 init_waitqueue_head(&p->wait);
820f9f14
EB
16 INIT_HLIST_NODE(&p->s_list);
17 INIT_HLIST_NODE(&p->m_list);
59eda0e0
AV
18 p->kill = kill;
19}
20
efb170c2 21void pin_remove(struct fs_pin *);
fdab684d 22void pin_insert_group(struct fs_pin *, struct vfsmount *, struct hlist_head *);
efb170c2 23void pin_insert(struct fs_pin *, struct vfsmount *);
59eda0e0 24void pin_kill(struct fs_pin *);