diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-02-19 06:16:15 +0000 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-02-19 06:16:15 +0000 |
commit | 34e3b522eca7e8741cecb7c2241091f181d1bd1f (patch) | |
tree | 3b64ac3aa4603539b8f8f384bc39998e29948900 /libdde_linux26/contrib/include/linux/file.h | |
parent | d4e6a14eb3fad1b43a21214db139db441025baf5 (diff) | |
parent | 6fafeb146e9efd59140ea58cebd7dd38ae9a6379 (diff) |
Merge branch 'upstream-merged'
Diffstat (limited to 'libdde_linux26/contrib/include/linux/file.h')
-rw-r--r-- | libdde_linux26/contrib/include/linux/file.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/libdde_linux26/contrib/include/linux/file.h b/libdde_linux26/contrib/include/linux/file.h new file mode 100644 index 00000000..335a0a5c --- /dev/null +++ b/libdde_linux26/contrib/include/linux/file.h @@ -0,0 +1,44 @@ +/* + * Wrapper functions for accessing the file_struct fd array. + */ + +#ifndef __LINUX_FILE_H +#define __LINUX_FILE_H + +#include <linux/compiler.h> +#include <linux/types.h> +#include <linux/posix_types.h> + +struct file; + +extern void __fput(struct file *); +extern void fput(struct file *); +extern void drop_file_write_access(struct file *file); + +struct file_operations; +struct vfsmount; +struct dentry; +extern int init_file(struct file *, struct vfsmount *mnt, + struct dentry *dentry, fmode_t mode, + const struct file_operations *fop); +extern struct file *alloc_file(struct vfsmount *, struct dentry *dentry, + fmode_t mode, const struct file_operations *fop); + +static inline void fput_light(struct file *file, int fput_needed) +{ + if (unlikely(fput_needed)) + fput(file); +} + +extern struct file *fget(unsigned int fd); +extern struct file *fget_light(unsigned int fd, int *fput_needed); +extern void set_close_on_exec(unsigned int fd, int flag); +extern void put_filp(struct file *); +extern int alloc_fd(unsigned start, unsigned flags); +extern int get_unused_fd(void); +#define get_unused_fd_flags(flags) alloc_fd(0, (flags)) +extern void put_unused_fd(unsigned int fd); + +extern void fd_install(unsigned int fd, struct file *file); + +#endif /* __LINUX_FILE_H */ |