Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 19 files:

Smatch caller information:

fs/btrfs/file.c btrfs_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-s64max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset r find_desired_extent
NOSPEC 1 offset
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 1-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte

fs/overlayfs/file.c ovl_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0
PARAM_VALUE 2 maxsize 0
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
DATA_SOURCE 0 file $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size

mm/shmem.c shmem_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-s64max
PARAM_VALUE 2 maxsize s64max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-s64max[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
LOCK2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/read_write.c generic_file_llseek_size() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file->__f_path.dentry (-1)-s32max
BUF_SIZE 0 file->private_data (-1),232
DATA_SOURCE 0 file $0
DATA_SOURCE 2 maxsize $3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 file->__f_path.dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 file->f_flags 0-u32max
USER_DATA 0 file->f_mode 0,4-u32max
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
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte
USER_PTR 0 file->__f_path.dentry->__d_name.name
LOCK2 0 &file->f_lock
TYPE_LOCK (struct file)->f_lock

fs/read_write.c generic_file_llseek_size() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file->__f_path.dentry (-1)-s32max
BUF_SIZE 0 file->private_data (-1),232
DATA_SOURCE 0 file $0
DATA_SOURCE 2 maxsize $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 file->__f_path.dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 file->f_flags 0-u32max
USER_DATA 0 file->f_mode 0,4-u32max
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
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte
USER_PTR 0 file->__f_path.dentry->__d_name.name

fs/read_write.c generic_file_llseek_size() -> vfs_setpos()

Type Parameter Key Value
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file->__f_path.dentry (-1)-s32max
BUF_SIZE 0 file->private_data (-1),232
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
DATA_SOURCE 2 maxsize $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 file->__f_path.dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 file->f_flags 0-u32max
USER_DATA 0 file->f_mode 0,4-u32max
USER_DATA 1 offset s64min-s64max
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
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte
USER_PTR 0 file->__f_path.dentry->__d_name.name

fs/nfs/nfs42proc.c _nfs42_proc_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
DATA_SOURCE 0 file $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte

fs/squashfs/file.c squashfs_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-s64max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte

fs/ocfs2/file.c ocfs2_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset s64min-s64max
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte
LOCK2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/smb/client/smb2ops.c smb3_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $2 [m]
NOSPEC 1 offset
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte

fs/exfat/file.c exfat_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte

fs/erofs/data.c erofs_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte

fs/f2fs/file.c f2fs_seek_block() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset s64min-(-4096),0-s64max
PARAM_VALUE 2 maxsize 0,4096-17592186044416
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
BIT_INFO 2 maxsize 0x0,0x1ffffffff000
BIT_INFO 2 maxsize 0x0,0x1ffffffff000
NOSPEC 1 offset
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte

fs/ext4/file.c ext4_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte

fs/ntfs/file.c ntfs_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte

mm/memfd_luo.c memfd_luo_retrieve() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 0 file->f_flags 0,32768-u32max
PARAM_VALUE 0 file->f_mode 0,4-u32max
PARAM_VALUE 2 maxsize s64max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
DATA_SOURCE 0 file r memfd_alloc_file
BIT_INFO 0 file->f_flags 0x8000,0xffffffffffffffff
BIT_INFO 0 file->f_mode 0x1c,0xffffffffffffffff
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 file->f_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 file->f_inode->i_size
UNITS 1 offset unit_byte
LOCK2 _T->lock
HALF_LOCKED2 &session->mutex

fs/xfs/xfs_file.c xfs_file_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 1 offset unit_byte
UNITS 2 maxsize unit_byte

fs/gfs2/inode.c gfs2_seek_data() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset r iomap_seek_data
NOSPEC 1 offset
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte

fs/gfs2/inode.c gfs2_seek_hole() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-9223372036854775806
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset r gfs2_glock_nq_init
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-9223372036854775806
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte

fs/ntfs3/file.c ntfs_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-s64max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
DATA_SOURCE 0 file $0
DATA_SOURCE 2 maxsize r ntfs_get_maxbytes
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-s64max[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size

fs/libfs.c offset_dir_llseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 1 offset 0-s64max
PARAM_VALUE 2 maxsize s64max
BUF_SIZE 0 file (-1)-s32max
BUF_SIZE 0 file (-1)-s32max
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 offset 0-s64max
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size

fs/fuse/file.c fuse_lseek() -> vfs_setpos()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
DATA_SOURCE 0 file $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 2 maxsize unit_byte
LOCK2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem