Defined in 2 files as a function:

Referenced in 7 files:

Smatch caller information:

mm/mmap.c do_mmap() -> can_mmap_file()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 0 file->f_op 4096-ptr_max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file->f_op (-1),272
BUF_SIZE 0 file->private_data (-1),32
CAPPED_DATA 0 file 1
DATA_SOURCE 0 file $0
BIT_INFO 0 file->f_mode 0x1,0xffffffff
BIT_INFO 0 file->f_op->fop_flags 0x0,0xffffffff
RX_PATH
USER_DATA 0 file->f_flags 0-18433,32770
USER_DATA 0 file->f_mode 33554432,34078720-571342855[c]
NO_OVERFLOW_SIMPLE 0 file->f_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 file->f_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 &mm->mmap_lock

fs/binfmt_elf.c load_elf_binary() -> can_mmap_file()

Type Parameter Key Value

fs/binfmt_elf.c load_elf_interp() -> can_mmap_file()

Type Parameter Key Value
DATA_SOURCE 0 file $1

fs/coda/file.c coda_file_mmap() -> can_mmap_file()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ipcp->lock

fs/ecryptfs/file.c ecryptfs_mmap() -> can_mmap_file()

Type Parameter Key Value
DATA_SOURCE 0 file r ecryptfs_file_to_lower
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ipcp->lock

fs/compat_binfmt_elf.c load_elf_binary() -> can_mmap_file()

Type Parameter Key Value

fs/compat_binfmt_elf.c load_elf_interp() -> can_mmap_file()

Type Parameter Key Value
DATA_SOURCE 0 file $1

fs/backing-file.c backing_file_mmap() -> can_mmap_file()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
DATA_SOURCE 0 file $0
BIT_INFO 0 file->f_mode 0x1000000,0xffffffff
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ipcp->lock