Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

mm/madvise.c madvise_willneed() -> vfs_fadvise()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 0 file->f_mapping 4096-ptr_max
PARAM_VALUE 0 file->f_mapping->a_ops 0-5722896659487309823,5722896659487309825-u64max
PARAM_VALUE 3 advice 3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 offset s64min-s64max
UNITS 1 offset unit_byte
UNITS 2 len unit_byte
HALF_LOCKED2 &madv_behavior->mm->mmap_lock

fs/erofs/ishare.c erofs_ishare_fadvise() -> vfs_fadvise()

Type Parameter Key Value
BUF_SIZE 0 file s32min-(-2),1-s32max
DATA_SOURCE 1 offset $1
DATA_SOURCE 2 len $2
DATA_SOURCE 3 advice $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset s64min-s64max
USER_DATA 2 len s64min-s64max
USER_DATA 3 advice s32min-s32max

mm/readahead.c ksys_readahead() -> vfs_fadvise()

Type Parameter Key Value
PARAM_VALUE 0 file 0,4-u64max
PARAM_VALUE 3 advice 3
DATA_SOURCE 1 offset $1
DATA_SOURCE 2 len $2
USER_DATA 1 offset s64min-s64max
USER_DATA 2 len s64min-s64max

fs/overlayfs/file.c ovl_fadvise() -> vfs_fadvise()

Type Parameter Key Value
PARAM_VALUE 0 file 1-ptr_max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 0 file 1
DATA_SOURCE 0 file r ovl_real_file
DATA_SOURCE 1 offset $1
DATA_SOURCE 2 len $2
DATA_SOURCE 3 advice $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset s64min-s64max
USER_DATA 2 len s64min-s64max
USER_DATA 3 advice s32min-s32max

io_uring/advise.c io_fadvise() -> vfs_fadvise()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

mm/fadvise.c ksys_fadvise64_64() -> vfs_fadvise()

Type Parameter Key Value
PARAM_VALUE 0 file 0,4-u64max
DATA_SOURCE 1 offset $1
DATA_SOURCE 2 len $2
DATA_SOURCE 3 advice $3
USER_DATA 1 offset s64min-s64max
USER_DATA 2 len s64min-s64max
USER_DATA 3 advice s32min-s32max