Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 39 files:
- block/fops.c, line 945
- drivers/char/random.c
- drivers/tty/tty_io.c
- fs/9p/vfs_file.c
- fs/afs/file.c, line 42
- fs/btrfs/file.c, line 3822
- fs/ceph/file.c, line 3255
- fs/exfat/file.c, line 1076
- fs/ext2/file.c, line 204
- fs/ext4/file.c, line 1050
- fs/f2fs/file.c, line 5575
- fs/fat/file.c, line 215
- fs/fuse/file.c, line 1887
- fs/gfs2/file.c, line 1434
- fs/hfs/inode.c, line 722
- fs/hfsplus/inode.c, line 463
- fs/hostfs/hostfs_kern.c, line 382
- fs/jffs2/file.c, line 63
- fs/jfs/file.c, line 152
- fs/kernfs/file.c, line 1018
- fs/nfs/file.c, line 976
- fs/nfs/nfs4file.c, line 447
- fs/nilfs2/file.c, line 187
- fs/ntfs/file.c, line 1693
- fs/ntfs3/file.c, line 1508
- fs/ocfs2/file.c
- fs/orangefs/file.c, line 582
- fs/pipe.c
- fs/proc/proc_sysctl.c, line 862
- fs/ramfs/file-mmu.c, line 47
- fs/ramfs/file-nommu.c, line 47
- fs/smb/client/cifsfs.c
- fs/splice.c, line 779
- fs/ubifs/file.c, line 1661
- fs/udf/file.c, line 210
- fs/ufs/file.c, line 46
- fs/xfs/xfs_file.c, line 2181
- fs/zonefs/file.c, line 876
- mm/shmem.c, line 5182
Smatch caller information:
fs/gfs2/file.c gfs2_file_splice_write() -> iter_file_splice_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | out | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_inode | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_inode->i_sb | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op->splice_write | 1-u64max |
| PARAM_VALUE | 2 | ppos | 4096-ptr_max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| DATA_SOURCE | 0 | pipe | $0 |
| DATA_SOURCE | 1 | out | $1 |
| DATA_SOURCE | 2 | ppos | $2 |
| DATA_SOURCE | 3 | len | $3 |
| DATA_SOURCE | 4 | flags | $4 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | *ppos | 0-1000000000 |
| USER_DATA | 3 | len | 1-1000000000[c] |
| USER_DATA | 4 | flags | 0-16[c] |
| NO_OVERFLOW_SIMPLE | 0 | pipe->max_usage | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->nr_accounted | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->ring_size | |
| USER_PTR | 2 | ppos | |
| HALF_LOCKED2 | &inode->i_rwsem |
fs/ntfs3/file.c ntfs_file_splice_write() -> iter_file_splice_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | out | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op->splice_write | 1-u64max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| DATA_SOURCE | 0 | pipe | $0 |
| DATA_SOURCE | 1 | out | $1 |
| DATA_SOURCE | 2 | ppos | $2 |
| DATA_SOURCE | 3 | len | $3 |
| DATA_SOURCE | 4 | flags | $4 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | *ppos | 0-1000000000 |
| USER_DATA | 3 | len | 1-1000000000[c] |
| USER_DATA | 4 | flags | 0-16[c] |
| NO_OVERFLOW_SIMPLE | 0 | pipe->max_usage | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->nr_accounted | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->ring_size | |
| USER_PTR | 2 | ppos | |
| HALF_LOCKED2 | &inode->i_rwsem |
fs/fuse/file.c fuse_splice_write() -> iter_file_splice_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | out | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op->splice_write | 1-u64max |
| PARAM_VALUE | 1 | out->private_data | 4096-ptr_max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| DATA_SOURCE | 0 | pipe | $0 |
| DATA_SOURCE | 1 | out | $1 |
| DATA_SOURCE | 2 | ppos | $2 |
| DATA_SOURCE | 3 | len | $3 |
| DATA_SOURCE | 4 | flags | $4 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | *ppos | 0-1000000000 |
| USER_DATA | 3 | len | 1-1000000000[c] |
| USER_DATA | 4 | flags | 0-16[c] |
| NO_OVERFLOW_SIMPLE | 0 | pipe->max_usage | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->nr_accounted | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->ring_size | |
| USER_PTR | 2 | ppos | |
| HALF_LOCKED2 | &inode->i_rwsem |
fs/splice.c do_splice_from() -> (struct file_operations)->splice_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pipe | 1-u64max |
| PARAM_VALUE | 1 | out | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op->splice_write | 1-u64max |
| PARAM_VALUE | 3 | len | 1-9223372036854775807 |
| PARAM_VALUE | 4 | flags | 0-2147483649 |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| CAPPED_DATA | 3 | len | 1 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 0 | pipe | $0 |
| DATA_SOURCE | 1 | out | $1 |
| DATA_SOURCE | 2 | ppos | $2 |
| DATA_SOURCE | 3 | len | $3 |
| DATA_SOURCE | 4 | flags | $4 |
| CONTAINER | 1 | -176-80+0 | $(-1) |
| BIT_INFO | 4 | flags | 0x0,0x7fffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | *ppos | 0-1000000000 |
| USER_DATA | 3 | len | 1-1000000000[c] |
| USER_DATA | 4 | flags | 0-16[c] |
| NO_OVERFLOW_SIMPLE | 0 | pipe->max_usage | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->nr_accounted | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->ring_size | |
| USER_PTR | 2 | ppos |
fs/backing-file.c backing_file_splice_write() -> (struct file_operations)->splice_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | out | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op | 4096-ptr_max |
| PARAM_VALUE | 1 | out->f_op->splice_write | 1-u64max |
| PARAM_VALUE | 2 | ppos | 263874794854072328,4289060380612468744 |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | pipe | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| BUF_SIZE | 1 | out | s32min,(-1),1-s32max |
| DATA_SOURCE | 0 | pipe | $0 |
| DATA_SOURCE | 1 | out | $1 |
| DATA_SOURCE | 3 | len | $3 |
| DATA_SOURCE | 4 | flags | $4 |
| CONTAINER | 1 | -176-80+0 | $(-1) |
| BIT_INFO | 1 | out->f_mode | 0x1000000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | *ppos | 0-1000000000 |
| USER_DATA | 3 | len | 1-1000000000[c] |
| USER_DATA | 4 | flags | 0-16[c] |
| NO_OVERFLOW_SIMPLE | 0 | pipe->max_usage | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->nr_accounted | |
| NO_OVERFLOW_SIMPLE | 0 | pipe->ring_size | |
| USER_PTR | 2 | ppos | |
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |