diff options
author | Ian Kent <raven@themaw.net> | 2006-03-27 04:14:55 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-27 11:44:40 -0500 |
commit | 5c0a32fc2cd0be912511199449a37a4a6f0f582d (patch) | |
tree | f34ff979282bd957dee161e3668cc01b2dbd51ee /fs/autofs4/autofs_i.h | |
parent | 3a15e2ab5d6e79a79291734ac24f33d51c0ae389 (diff) |
[PATCH] autofs4: add new packet type for v5 communications
This patch define a new autofs packet for autofs v5 and updates the waitq.c
functions to handle the additional packet type.
Signed-off-by: Ian Kent <raven@themaw.net>
Cc: Al Viro <viro@ftp.linux.org.uk>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/autofs4/autofs_i.h')
-rw-r--r-- | fs/autofs4/autofs_i.h | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/fs/autofs4/autofs_i.h b/fs/autofs4/autofs_i.h index ed388a1d8fc4..37c8d909d1e9 100644 --- a/fs/autofs4/autofs_i.h +++ b/fs/autofs4/autofs_i.h | |||
@@ -77,6 +77,12 @@ struct autofs_wait_queue { | |||
77 | int hash; | 77 | int hash; |
78 | int len; | 78 | int len; |
79 | char *name; | 79 | char *name; |
80 | u32 dev; | ||
81 | u64 ino; | ||
82 | uid_t uid; | ||
83 | gid_t gid; | ||
84 | pid_t pid; | ||
85 | pid_t tgid; | ||
80 | /* This is for status reporting upon return */ | 86 | /* This is for status reporting upon return */ |
81 | int status; | 87 | int status; |
82 | atomic_t notified; | 88 | atomic_t notified; |
@@ -180,13 +186,6 @@ struct autofs_info *autofs4_init_ino(struct autofs_info *, struct autofs_sb_info | |||
180 | 186 | ||
181 | /* Queue management functions */ | 187 | /* Queue management functions */ |
182 | 188 | ||
183 | enum autofs_notify | ||
184 | { | ||
185 | NFY_NONE, | ||
186 | NFY_MOUNT, | ||
187 | NFY_EXPIRE | ||
188 | }; | ||
189 | |||
190 | int autofs4_wait(struct autofs_sb_info *,struct dentry *, enum autofs_notify); | 189 | int autofs4_wait(struct autofs_sb_info *,struct dentry *, enum autofs_notify); |
191 | int autofs4_wait_release(struct autofs_sb_info *,autofs_wqt_t,int); | 190 | int autofs4_wait_release(struct autofs_sb_info *,autofs_wqt_t,int); |
192 | void autofs4_catatonic_mode(struct autofs_sb_info *); | 191 | void autofs4_catatonic_mode(struct autofs_sb_info *); |
@@ -204,6 +203,16 @@ static inline int autofs4_follow_mount(struct vfsmount **mnt, struct dentry **de | |||
204 | return res; | 203 | return res; |
205 | } | 204 | } |
206 | 205 | ||
206 | static inline u32 autofs4_get_dev(struct autofs_sb_info *sbi) | ||
207 | { | ||
208 | return new_encode_dev(sbi->sb->s_dev); | ||
209 | } | ||
210 | |||
211 | static inline u64 autofs4_get_ino(struct autofs_sb_info *sbi) | ||
212 | { | ||
213 | return sbi->sb->s_root->d_inode->i_ino; | ||
214 | } | ||
215 | |||
207 | static inline int simple_positive(struct dentry *dentry) | 216 | static inline int simple_positive(struct dentry *dentry) |
208 | { | 217 | { |
209 | return dentry->d_inode && !d_unhashed(dentry); | 218 | return dentry->d_inode && !d_unhashed(dentry); |