Lines Matching refs:file
245 static inline u64 file_mmap_size_max(struct file *file, struct inode *inode) in file_mmap_size_max() argument
257 if (file->f_op->fop_flags & FOP_UNSIGNED_OFFSET) in file_mmap_size_max()
264 static inline bool file_mmap_ok(struct file *file, struct inode *inode, in file_mmap_ok() argument
267 u64 maxsize = file_mmap_size_max(file, inode); in file_mmap_ok()
334 unsigned long do_mmap(struct file *file, unsigned long addr, in do_mmap() argument
357 if (!(file && path_noexec(&file->f_path))) in do_mmap()
400 vm_flags |= calc_vm_prot_bits(prot, pkey) | calc_vm_flag_bits(file, flags) | in do_mmap()
406 addr = __get_unmapped_area(file, addr, len, pgoff, flags, vm_flags); in do_mmap()
422 if (file) { in do_mmap()
423 struct inode *inode = file_inode(file); in do_mmap()
427 if (!file_mmap_ok(file, inode, pgoff, len)) in do_mmap()
431 if (file->f_op->fop_flags & FOP_MMAP_SYNC) in do_mmap()
449 if (!(file->f_mode & FMODE_WRITE)) in do_mmap()
451 if (IS_SWAPFILE(file->f_mapping->host)) in do_mmap()
459 if (IS_APPEND(inode) && (file->f_mode & FMODE_WRITE)) in do_mmap()
463 if (!(file->f_mode & FMODE_WRITE)) in do_mmap()
467 if (!(file->f_mode & FMODE_READ)) in do_mmap()
469 if (path_noexec(&file->f_path)) { in do_mmap()
475 if (!can_mmap_file(file)) in do_mmap()
489 err = memfd_check_seals_mmap(file, &vm_flags); in do_mmap()
554 if (file && is_file_hugepages(file)) in do_mmap()
558 addr = mmap_region(file, addr, len, vm_flags, pgoff, uf); in do_mmap()
570 struct file *file = NULL; in ksys_mmap_pgoff() local
575 file = fget(fd); in ksys_mmap_pgoff()
576 if (!file) in ksys_mmap_pgoff()
578 if (is_file_hugepages(file)) { in ksys_mmap_pgoff()
579 len = ALIGN(len, huge_page_size(hstate_file(file))); in ksys_mmap_pgoff()
596 file = hugetlb_file_setup(HUGETLB_ANON_FILE, len, in ksys_mmap_pgoff()
600 if (IS_ERR(file)) in ksys_mmap_pgoff()
601 return PTR_ERR(file); in ksys_mmap_pgoff()
604 retval = vm_mmap_pgoff(file, addr, len, prot, flags, pgoff); in ksys_mmap_pgoff()
606 if (file) in ksys_mmap_pgoff()
607 fput(file); in ksys_mmap_pgoff()
688 generic_get_unmapped_area(struct file *filp, unsigned long addr, in generic_get_unmapped_area()
723 arch_get_unmapped_area(struct file *filp, unsigned long addr, in arch_get_unmapped_area()
737 generic_get_unmapped_area_topdown(struct file *filp, unsigned long addr, in generic_get_unmapped_area_topdown()
791 arch_get_unmapped_area_topdown(struct file *filp, unsigned long addr, in arch_get_unmapped_area_topdown()
800 unsigned long mm_get_unmapped_area_vmflags(struct mm_struct *mm, struct file *filp, in mm_get_unmapped_area_vmflags()
812 __get_unmapped_area(struct file *file, unsigned long addr, unsigned long len, in __get_unmapped_area() argument
815 unsigned long (*get_area)(struct file *, unsigned long, in __get_unmapped_area()
827 if (file) { in __get_unmapped_area()
828 if (file->f_op->get_unmapped_area) in __get_unmapped_area()
829 get_area = file->f_op->get_unmapped_area; in __get_unmapped_area()
839 if (!file) in __get_unmapped_area()
843 addr = get_area(file, addr, len, pgoff, flags); in __get_unmapped_area()
844 } else if (IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE) && !file in __get_unmapped_area()
848 addr = thp_get_unmapped_area_vmflags(file, addr, len, in __get_unmapped_area()
851 addr = mm_get_unmapped_area_vmflags(current->mm, file, addr, len, in __get_unmapped_area()
867 mm_get_unmapped_area(struct mm_struct *mm, struct file *file, in mm_get_unmapped_area() argument
871 return mm_get_unmapped_area_vmflags(mm, file, addr, len, in mm_get_unmapped_area()
1095 struct file *file; in SYSCALL_DEFINE5() local
1139 file = get_file(vma->vm_file); in SYSCALL_DEFINE5()
1144 ret = security_mmap_file(file, prot, flags); in SYSCALL_DEFINE5()
1146 fput(file); in SYSCALL_DEFINE5()
1154 fput(file); in SYSCALL_DEFINE5()
1166 if (vma->vm_file != file) in SYSCALL_DEFINE5()
1198 fput(file); in SYSCALL_DEFINE5()
1751 struct file *file; in dup_mmap() local
1817 file = tmp->vm_file; in dup_mmap()
1818 if (file) { in dup_mmap()
1819 struct address_space *mapping = file->f_mapping; in dup_mmap()
1821 get_file(file); in dup_mmap()