Lines Matching refs:filp
41 long vfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) in vfs_ioctl() argument
45 if (!filp->f_op->unlocked_ioctl) in vfs_ioctl()
48 error = filp->f_op->unlocked_ioctl(filp, cmd, arg); in vfs_ioctl()
56 static int ioctl_fibmap(struct file *filp, int __user *p) in ioctl_fibmap() argument
58 struct inode *inode = file_inode(filp); in ioctl_fibmap()
80 sb->s_id, filp); in ioctl_fibmap()
196 static int ioctl_fiemap(struct file *filp, struct fiemap __user *ufiemap) in ioctl_fiemap() argument
200 struct inode *inode = file_inode(filp); in ioctl_fiemap()
473 static int ioctl_preallocate(struct file *filp, int mode, void __user *argp) in ioctl_preallocate() argument
475 struct inode *inode = file_inode(filp); in ioctl_preallocate()
485 sr.l_start += filp->f_pos; in ioctl_preallocate()
494 return vfs_fallocate(filp, mode | FALLOC_FL_KEEP_SIZE, sr.l_start, in ioctl_preallocate()
527 static int file_ioctl(struct file *filp, unsigned int cmd, int __user *p) in file_ioctl() argument
531 return ioctl_fibmap(filp, p); in file_ioctl()
534 return ioctl_preallocate(filp, 0, p); in file_ioctl()
537 return ioctl_preallocate(filp, FALLOC_FL_PUNCH_HOLE, p); in file_ioctl()
539 return ioctl_preallocate(filp, FALLOC_FL_ZERO_RANGE, p); in file_ioctl()
545 static int ioctl_fionbio(struct file *filp, int __user *argp) in ioctl_fionbio() argument
559 spin_lock(&filp->f_lock); in ioctl_fionbio()
561 filp->f_flags |= flag; in ioctl_fionbio()
563 filp->f_flags &= ~flag; in ioctl_fionbio()
564 spin_unlock(&filp->f_lock); in ioctl_fionbio()
568 static int ioctl_fioasync(unsigned int fd, struct file *filp, in ioctl_fioasync() argument
580 if ((flag ^ filp->f_flags) & FASYNC) { in ioctl_fioasync()
581 if (filp->f_op->fasync) in ioctl_fioasync()
583 error = filp->f_op->fasync(fd, filp, on); in ioctl_fioasync()
590 static int ioctl_fsfreeze(struct file *filp) in ioctl_fsfreeze() argument
592 struct super_block *sb = file_inode(filp)->i_sb; in ioctl_fsfreeze()
607 static int ioctl_fsthaw(struct file *filp) in ioctl_fsthaw() argument
609 struct super_block *sb = file_inode(filp)->i_sb; in ioctl_fsthaw()
667 static int do_vfs_ioctl(struct file *filp, unsigned int fd, in do_vfs_ioctl() argument
671 struct inode *inode = file_inode(filp); in do_vfs_ioctl()
683 return ioctl_fionbio(filp, argp); in do_vfs_ioctl()
686 return ioctl_fioasync(fd, filp, argp); in do_vfs_ioctl()
699 return ioctl_fsfreeze(filp); in do_vfs_ioctl()
702 return ioctl_fsthaw(filp); in do_vfs_ioctl()
705 return ioctl_fiemap(filp, argp); in do_vfs_ioctl()
715 return ioctl_file_clone(filp, arg, 0, 0, 0); in do_vfs_ioctl()
718 return ioctl_file_clone_range(filp, argp); in do_vfs_ioctl()
721 return ioctl_file_dedupe_range(filp, argp); in do_vfs_ioctl()
725 return vfs_ioctl(filp, cmd, arg); in do_vfs_ioctl()
727 return put_user(i_size_read(inode) - filp->f_pos, in do_vfs_ioctl()
732 return file_ioctl(filp, cmd, argp); in do_vfs_ioctl()