Lines Matching refs:file
239 struct file *ia_file;
319 struct file *ki_filp;
364 int (*readpage)(struct file *, struct page *);
376 int (*readpages)(struct file *filp, struct address_space *mapping,
379 int (*write_begin)(struct file *, struct address_space *mapping,
382 int (*write_end)(struct file *, struct address_space *mapping,
407 int (*swap_activate)(struct swap_info_struct *sis, struct file *file,
409 void (*swap_deactivate)(struct file *file);
418 int pagecache_write_begin(struct file *, struct address_space *mapping,
422 int pagecache_write_end(struct file *, struct address_space *mapping,
935 struct file { struct
983 static inline struct file *get_file(struct file *f) in get_file()
1095 struct file *fl_file;
1136 extern int fcntl_getlk(struct file *, unsigned int, struct flock *);
1137 extern int fcntl_setlk(unsigned int, struct file *, unsigned int,
1141 extern int fcntl_getlk64(struct file *, unsigned int, struct flock64 *);
1142 extern int fcntl_setlk64(unsigned int, struct file *, unsigned int,
1146 extern int fcntl_setlease(unsigned int fd, struct file *filp, long arg);
1147 extern int fcntl_getlease(struct file *filp);
1156 extern void locks_remove_posix(struct file *, fl_owner_t);
1157 extern void locks_remove_file(struct file *);
1159 extern void posix_test_lock(struct file *, struct file_lock *);
1160 extern int posix_lock_file(struct file *, struct file_lock *, struct file_lock *);
1162 extern int vfs_test_lock(struct file *, struct file_lock *);
1163 extern int vfs_lock_file(struct file *, unsigned int, struct file_lock *, struct file_lock *);
1164 extern int vfs_cancel_lock(struct file *filp, struct file_lock *fl);
1168 extern int generic_setlease(struct file *, long, struct file_lock **, void **priv);
1169 extern int vfs_setlease(struct file *, long, struct file_lock **, void **);
1178 struct file *filp, struct files_struct *files);
1180 static inline int fcntl_getlk(struct file *file, unsigned int cmd, in fcntl_getlk() argument
1186 static inline int fcntl_setlk(unsigned int fd, struct file *file, in fcntl_setlk() argument
1193 static inline int fcntl_getlk64(struct file *file, unsigned int cmd, in fcntl_getlk64() argument
1199 static inline int fcntl_setlk64(unsigned int fd, struct file *file, in fcntl_setlk64() argument
1205 static inline int fcntl_setlease(unsigned int fd, struct file *filp, long arg) in fcntl_setlease()
1210 static inline int fcntl_getlease(struct file *filp) in fcntl_getlease()
1235 static inline void locks_remove_posix(struct file *filp, fl_owner_t owner) in locks_remove_posix()
1240 static inline void locks_remove_file(struct file *filp) in locks_remove_file()
1245 static inline void posix_test_lock(struct file *filp, struct file_lock *fl) in posix_test_lock()
1250 static inline int posix_lock_file(struct file *filp, struct file_lock *fl, in posix_lock_file()
1261 static inline int vfs_test_lock(struct file *filp, struct file_lock *fl) in vfs_test_lock()
1266 static inline int vfs_lock_file(struct file *filp, unsigned int cmd, in vfs_lock_file()
1272 static inline int vfs_cancel_lock(struct file *filp, struct file_lock *fl) in vfs_cancel_lock()
1293 static inline int generic_setlease(struct file *filp, long arg, in generic_setlease()
1299 static inline int vfs_setlease(struct file *filp, long arg, in vfs_setlease()
1313 struct file *filp, struct files_struct *files) {} in show_fd_locks()
1316 static inline struct inode *file_inode(const struct file *f) in file_inode()
1321 static inline struct dentry *file_dentry(const struct file *file) in file_dentry() argument
1323 return d_real(file->f_path.dentry, file_inode(file)); in file_dentry()
1326 static inline int locks_lock_file_wait(struct file *filp, struct file_lock *fl) in locks_lock_file_wait()
1336 struct file *fa_file;
1343 extern int fasync_helper(int, struct file *, int, struct fasync_struct **);
1344 extern struct fasync_struct *fasync_insert_entry(int, struct file *, struct fasync_struct **, struc…
1345 extern int fasync_remove_entry(struct file *, struct fasync_struct **);
1352 extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
1353 extern int f_setown(struct file *filp, unsigned long arg, int force);
1354 extern void f_delown(struct file *filp);
1355 extern pid_t f_getown(struct file *filp);
1728 extern long vfs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
1816 loff_t (*llseek) (struct file *, loff_t, int);
1817 ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);
1818 ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);
1822 int (*iterate) (struct file *, struct dir_context *);
1823 int (*iterate_shared) (struct file *, struct dir_context *);
1824 __poll_t (*poll) (struct file *, struct poll_table_struct *);
1825 long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long);
1826 long (*compat_ioctl) (struct file *, unsigned int, unsigned long);
1827 int (*mmap) (struct file *, struct vm_area_struct *);
1829 int (*open) (struct inode *, struct file *);
1830 int (*flush) (struct file *, fl_owner_t id);
1831 int (*release) (struct inode *, struct file *);
1832 int (*fsync) (struct file *, loff_t, loff_t, int datasync);
1833 int (*fasync) (int, struct file *, int);
1834 int (*lock) (struct file *, int, struct file_lock *);
1835 ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int);
1836 …unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, uns…
1838 int (*flock) (struct file *, int, struct file_lock *);
1839 ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
1840 ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
1841 int (*setlease)(struct file *, long, struct file_lock **, void **);
1842 long (*fallocate)(struct file *file, int mode, loff_t offset,
1844 void (*show_fdinfo)(struct seq_file *m, struct file *f);
1846 unsigned (*mmap_capabilities)(struct file *);
1848 ssize_t (*copy_file_range)(struct file *, loff_t, struct file *,
1850 loff_t (*remap_file_range)(struct file *file_in, loff_t pos_in,
1851 struct file *file_out, loff_t pos_out,
1853 int (*fadvise)(struct file *, loff_t, loff_t, int);
1880 struct file *, unsigned open_flag,
1886 static inline ssize_t call_read_iter(struct file *file, struct kiocb *kio, in call_read_iter() argument
1889 return file->f_op->read_iter(kio, iter); in call_read_iter()
1892 static inline ssize_t call_write_iter(struct file *file, struct kiocb *kio, in call_write_iter() argument
1895 return file->f_op->write_iter(kio, iter); in call_write_iter()
1898 static inline int call_mmap(struct file *file, struct vm_area_struct *vma) in call_mmap() argument
1900 return file->f_op->mmap(file, vma); in call_mmap()
1908 extern ssize_t __vfs_read(struct file *, char __user *, size_t, loff_t *);
1909 extern ssize_t vfs_read(struct file *, char __user *, size_t, loff_t *);
1910 extern ssize_t vfs_write(struct file *, const char __user *, size_t, loff_t *);
1911 extern ssize_t vfs_readv(struct file *, const struct iovec __user *,
1913 extern ssize_t vfs_copy_file_range(struct file *, loff_t , struct file *,
1915 extern ssize_t generic_copy_file_range(struct file *file_in, loff_t pos_in,
1916 struct file *file_out, loff_t pos_out,
1918 extern int generic_remap_file_range_prep(struct file *file_in, loff_t pos_in,
1919 struct file *file_out, loff_t pos_out,
1922 extern loff_t do_clone_file_range(struct file *file_in, loff_t pos_in,
1923 struct file *file_out, loff_t pos_out,
1925 extern loff_t vfs_clone_file_range(struct file *file_in, loff_t pos_in,
1926 struct file *file_out, loff_t pos_out,
1928 extern int vfs_dedupe_file_range(struct file *file,
1930 extern loff_t vfs_dedupe_file_range_one(struct file *src_file, loff_t src_pos,
1931 struct file *dst_file, loff_t dst_pos,
2045 static inline enum rw_hint file_write_hint(struct file *file) in file_write_hint() argument
2047 if (file->f_write_hint != WRITE_LIFE_NOT_SET) in file_write_hint()
2048 return file->f_write_hint; in file_write_hint()
2050 return file_inode(file)->i_write_hint; in file_write_hint()
2053 static inline int iocb_flags(struct file *file);
2064 static inline void init_sync_kiocb(struct kiocb *kiocb, struct file *filp) in init_sync_kiocb()
2199 static inline void file_accessed(struct file *file) in file_accessed() argument
2201 if (!(file->f_flags & O_NOATIME)) in file_accessed()
2202 touch_atime(&file->f_path); in file_accessed()
2205 extern int file_modified(struct file *file);
2296 struct file *__file = (f); \
2335 extern int locks_mandatory_locked(struct file *);
2336 extern int locks_mandatory_area(struct inode *, struct file *, loff_t, loff_t, unsigned char);
2358 static inline int locks_verify_locked(struct file *file) in locks_verify_locked() argument
2360 if (mandatory_lock(locks_inode(file))) in locks_verify_locked()
2361 return locks_mandatory_locked(file); in locks_verify_locked()
2366 struct file *f, in locks_verify_truncate()
2383 static inline int locks_mandatory_locked(struct file *file) in locks_mandatory_locked() argument
2388 static inline int locks_mandatory_area(struct inode *inode, struct file *filp, in locks_mandatory_area()
2404 static inline int locks_verify_locked(struct file *file) in locks_verify_locked() argument
2409 static inline int locks_verify_truncate(struct inode *inode, struct file *filp, in locks_verify_truncate()
2521 struct file *filp);
2522 extern int vfs_fallocate(struct file *file, int mode, loff_t offset,
2526 extern struct file *file_open_name(struct filename *, int, umode_t);
2527 extern struct file *filp_open(const char *, int, umode_t);
2528 extern struct file *file_open_root(struct dentry *, struct vfsmount *,
2530 extern struct file * dentry_open(const struct path *, int, const struct cred *);
2531 extern struct file * open_with_fake_path(const struct path *, int,
2533 static inline struct file *file_clone_open(struct file *file) in file_clone_open() argument
2535 return dentry_open(&file->f_path, file->f_flags, file->f_cred); in file_clone_open()
2537 extern int filp_close(struct file *, fl_owner_t id);
2544 extern int finish_open(struct file *file, struct dentry *dentry,
2545 int (*open)(struct inode *, struct file *));
2546 extern int finish_no_open(struct file *file, struct dentry *dentry);
2550 extern int ioctl_preallocate(struct file *filp, void __user *argp);
2622 extern long compat_blkdev_ioctl(struct file *, unsigned, unsigned long);
2751 extern int __must_check file_fdatawait_range(struct file *file, loff_t lstart,
2753 extern int __must_check file_check_and_advance_wb_err(struct file *file);
2754 extern int __must_check file_write_and_wait_range(struct file *file,
2757 static inline int file_write_and_wait(struct file *file) in file_write_and_wait() argument
2759 return file_write_and_wait_range(file, 0, LLONG_MAX); in file_write_and_wait()
2838 extern int vfs_fsync_range(struct file *file, loff_t start, loff_t end,
2840 extern int vfs_fsync(struct file *file, int datasync);
2842 extern int sync_file_range(struct file *file, loff_t offset, loff_t nbytes,
2878 static inline void file_start_write(struct file *file) in file_start_write() argument
2880 if (!S_ISREG(file_inode(file)->i_mode)) in file_start_write()
2882 __sb_start_write(file_inode(file)->i_sb, SB_FREEZE_WRITE, true); in file_start_write()
2885 static inline bool file_start_write_trylock(struct file *file) in file_start_write_trylock() argument
2887 if (!S_ISREG(file_inode(file)->i_mode)) in file_start_write_trylock()
2889 return __sb_start_write(file_inode(file)->i_sb, SB_FREEZE_WRITE, false); in file_start_write_trylock()
2892 static inline void file_end_write(struct file *file) in file_end_write() argument
2894 if (!S_ISREG(file_inode(file)->i_mode)) in file_end_write()
2896 __sb_end_write(file_inode(file)->i_sb, SB_FREEZE_WRITE); in file_end_write()
2919 static inline int deny_write_access(struct file *file) in deny_write_access() argument
2921 struct inode *inode = file_inode(file); in deny_write_access()
2928 static inline void allow_write_access(struct file *file) in allow_write_access() argument
2930 if (file) in allow_write_access()
2931 atomic_inc(&file_inode(file)->i_writecount); in allow_write_access()
2990 extern int kernel_read_file(struct file *, void **, loff_t *, loff_t,
2996 extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
2997 extern ssize_t kernel_write(struct file *, const void *, size_t, loff_t *);
2998 extern ssize_t __kernel_write(struct file *, const void *, size_t, loff_t *);
2999 extern struct file * open_exec(const char *);
3005 extern char *file_path(struct file *, char *, int);
3010 extern loff_t default_llseek(struct file *file, loff_t offset, int whence);
3012 extern loff_t vfs_llseek(struct file *file, loff_t offset, int whence);
3064 extern int file_remove_privs(struct file *);
3088 extern int generic_file_mmap(struct file *, struct vm_area_struct *);
3089 extern int generic_file_readonly_mmap(struct file *, struct vm_area_struct *);
3091 extern int generic_remap_checks(struct file *file_in, loff_t pos_in,
3092 struct file *file_out, loff_t pos_out,
3094 extern int generic_file_rw_checks(struct file *file_in, struct file *file_out);
3095 extern int generic_copy_file_checks(struct file *file_in, loff_t pos_in,
3096 struct file *file_out, loff_t pos_out,
3102 extern ssize_t generic_perform_write(struct file *, struct iov_iter *, loff_t);
3104 ssize_t vfs_iter_read(struct file *file, struct iov_iter *iter, loff_t *ppos,
3106 ssize_t vfs_iter_write(struct file *file, struct iov_iter *iter, loff_t *ppos,
3112 extern int blkdev_fsync(struct file *filp, loff_t start, loff_t end,
3117 extern ssize_t generic_file_splice_read(struct file *, loff_t *,
3120 struct file *, loff_t *, size_t, unsigned int);
3122 struct file *out, loff_t *, size_t len, unsigned int flags);
3123 extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
3129 extern loff_t noop_llseek(struct file *file, loff_t offset, int whence);
3130 extern loff_t no_llseek(struct file *file, loff_t offset, int whence);
3131 extern loff_t vfs_setpos(struct file *file, loff_t offset, loff_t maxsize);
3132 extern loff_t generic_file_llseek(struct file *file, loff_t offset, int whence);
3133 extern loff_t generic_file_llseek_size(struct file *file, loff_t offset,
3135 extern loff_t fixed_size_llseek(struct file *file, loff_t offset,
3137 extern loff_t no_seek_end_llseek_size(struct file *, loff_t, int, loff_t);
3138 extern loff_t no_seek_end_llseek(struct file *, loff_t, int);
3139 extern int generic_file_open(struct inode * inode, struct file * filp);
3140 extern int nonseekable_open(struct inode * inode, struct file * filp);
3141 extern int stream_open(struct inode * inode, struct file * filp);
3156 void dio_warn_stale_pagecache(struct file *filp);
3235 extern int iterate_dir(struct file *, struct dir_context *);
3286 extern int dcache_dir_open(struct inode *, struct file *);
3287 extern int dcache_dir_close(struct inode *, struct file *);
3288 extern loff_t dcache_dir_lseek(struct file *, loff_t, int);
3289 extern int dcache_readdir(struct file *, struct dir_context *);
3293 extern int simple_open(struct inode *inode, struct file *file);
3299 extern int noop_fsync(struct file *, loff_t, loff_t, int);
3305 extern int simple_readpage(struct file *file, struct page *page);
3306 extern int simple_write_begin(struct file *file, struct address_space *mapping,
3309 extern int simple_write_end(struct file *file, struct address_space *mapping,
3314 extern int simple_nosetlease(struct file *, long, struct file_lock **, void **);
3318 extern ssize_t generic_read_dir(struct file *, char __user *, size_t, loff_t *);
3335 extern int __generic_file_fsync(struct file *, loff_t, loff_t, int);
3336 extern int generic_file_fsync(struct file *, loff_t, loff_t, int);
3356 extern int file_update_time(struct file *file);
3358 static inline bool io_is_direct(struct file *filp) in io_is_direct()
3382 static inline int iocb_flags(struct file *file) in iocb_flags() argument
3385 if (file->f_flags & O_APPEND) in iocb_flags()
3387 if (io_is_direct(file)) in iocb_flags()
3389 if ((file->f_flags & O_DSYNC) || IS_SYNC(file->f_mapping->host)) in iocb_flags()
3391 if (file->f_flags & __O_SYNC) in iocb_flags()
3444 char *simple_transaction_get(struct file *file, const char __user *buf,
3446 ssize_t simple_transaction_read(struct file *file, char __user *buf,
3448 int simple_transaction_release(struct inode *inode, struct file *file);
3450 void simple_transaction_set(struct file *file, size_t n);
3469 static int __fops ## _open(struct inode *inode, struct file *file) \
3472 return simple_attr_open(inode, file, __get, __set, __fmt); \
3489 int simple_attr_open(struct inode *inode, struct file *file,
3492 int simple_attr_release(struct inode *inode, struct file *file);
3493 ssize_t simple_attr_read(struct file *file, char __user *buf,
3495 ssize_t simple_attr_write(struct file *file, const char __user *buf,
3544 static inline bool dir_emit_dot(struct file *file, struct dir_context *ctx) in dir_emit_dot() argument
3547 file->f_path.dentry->d_inode->i_ino, DT_DIR) == 0; in dir_emit_dot()
3549 static inline bool dir_emit_dotdot(struct file *file, struct dir_context *ctx) in dir_emit_dotdot() argument
3552 parent_ino(file->f_path.dentry), DT_DIR) == 0; in dir_emit_dotdot()
3554 static inline bool dir_emit_dots(struct file *file, struct dir_context *ctx) in dir_emit_dots() argument
3557 if (!dir_emit_dot(file, ctx)) in dir_emit_dots()
3562 if (!dir_emit_dotdot(file, ctx)) in dir_emit_dots()
3586 extern int vfs_fadvise(struct file *file, loff_t offset, loff_t len,
3588 extern int generic_fadvise(struct file *file, loff_t offset, loff_t len,
3592 extern struct sock *io_uring_get_socket(struct file *file);
3594 static inline struct sock *io_uring_get_socket(struct file *file) in io_uring_get_socket() argument