Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 12 files:
- fs/ceph/inode.c, line 2417
- fs/configfs/symlink.c, line 259
- fs/debugfs/inode.c, line 66
- fs/erofs/inode.c, line 395
- fs/ext2/symlink.c, line 32
- fs/ext4/symlink.c, line 132
- fs/jffs2/symlink.c, line 16
- fs/jfs/symlink.c, line 12
- fs/libfs.c
- fs/orangefs/symlink.c, line 13
- kernel/bpf/inode.c, line 459
- mm/shmem.c, line 4345
Smatch caller information:
fs/namei.c vfs_get_link() -> (struct inode_operations)->get_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_op | 4096-ptr_max |
| BUF_SIZE | 0 | dentry | (-1),1-s32max |
| BUF_SIZE | 0 | dentry | (-1),1-s32max |
| DATA_SOURCE | 0 | dentry | $0 |
| DATA_SOURCE | 2 | done | $1 |
| CONTAINER | 1 | -8-32+0 | $(-1) |
| PARAM_COMPARE | 0 | dentry->d_inode | == $1 |
| PARAM_COMPARE | 1 | inode | == $0->d_inode |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/namei.c vfs_readlink() -> (struct inode_operations)->get_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_op->readlink | 0,1728600404483375104,2832489546165891072,2874824064778891264,3069732422725099520,4516337085607264256 |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_export_op->fh_to_parent | 0,5297,148606482432692224,436469935444291584,467281172929331200,529780027764285440,1092893949038768128,1556959531105513472,1608953577475584000,1649536479961075712,2404761408063094784,2970908329832960000,3511613614414655488-s64max |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_export_op->get_parent | 0,8931,264940071972966400,291591359766798336,565128213429456896,893189740598853632,1241177127089143808,1474696885321834496,1812477326828269568,1893665921928286208,2210088671756947456,2437012291923775488,2483979068402987008-s64max |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_link | 0 |
| PARAM_VALUE | 1 | inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_op->readlink | 0,1728600404483375104,2832489546165891072,2874824064778891264,3069732422725099520,4516337085607264256 |
| PARAM_VALUE | 2 | done | 1787561173101674496 |
| PARAM_VALUE | 2 | done->arg | 0 |
| PARAM_VALUE | 2 | done->fn | 0 |
| BUF_SIZE | 0 | dentry | (-1)-s32max |
| BUF_SIZE | 0 | dentry | (-1)-s32max |
| CAPPED_DATA | 0 | dentry | 1 |
| DATA_SOURCE | 0 | dentry | $0 |
| CONTAINER | 1 | -8-32+0 | $(-1) |
| PARAM_COMPARE | 0 | dentry->d_inode | == $1 |
| PARAM_COMPARE | 1 | inode | == $0->d_inode |
| BIT_INFO | 1 | inode->i_opflags | 0x10,0xffbf |
fs/crypto/hooks.c fscrypt_symlink_getattr() -> (struct inode_operations)->get_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_link | 0 |
| PARAM_VALUE | 1 | inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 2 | done | 8279564313695432704 |
| PARAM_VALUE | 2 | done->arg | 0 |
| PARAM_VALUE | 2 | done->fn | 0 |
| CONTAINER | 1 | -8-32+0 | $(-1) |
| PARAM_COMPARE | 0 | dentry->d_inode | == $1 |
| PARAM_COMPARE | 1 | inode | == $0->d_inode |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &iint->mutex | ||
| HALF_LOCKED2 | &lo->lo_mutex |
fs/namei.c pick_link() -> pick_link ptr get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dentry | 0 |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_link | 0 |
| PARAM_VALUE | 1 | inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_op->get_link | 0,4096-ptr_max |
| PARAM_VALUE | 2 | done | 4096-ptr_max |
| PARAM_VALUE | 2 | done->fn | 0 |
| DATA_SOURCE | 1 | inode | $2 |
| CONTAINER | 1 | -8-32+0 | $(-1) |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/namei.c pick_link() -> pick_link ptr get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_mapping->host->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_export_op->fh_to_parent | 0,5297,148606482432692224,436469935444291584,467281172929331200,529780027764285440,1092893949038768128,1556959531105513472,1608953577475584000,1649536479961075712,2404761408063094784,2970908329832960000,3511613614414655488-s64max |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_export_op->get_parent | 0,8931,264940071972966400,291591359766798336,565128213429456896,893189740598853632,1241177127089143808,1474696885321834496,1812477326828269568,1893665921928286208,2210088671756947456,2437012291923775488,2483979068402987008-s64max |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_link | 0 |
| PARAM_VALUE | 1 | inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_op->get_link | 0,4096-ptr_max |
| PARAM_VALUE | 2 | done | 4096-ptr_max |
| PARAM_VALUE | 2 | done->fn | 0 |
| DATA_SOURCE | 1 | inode | $2 |
| CONTAINER | 1 | -8-32+0 | $(-1) |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/namei.c pick_link() -> pick_link ptr get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dentry | 4096-ptr_max |
| PARAM_VALUE | 0 | dentry->d_inode->i_mapping->host->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_export_op->fh_to_parent | 0,5297,148606482432692224,436469935444291584,467281172929331200,529780027764285440,1092893949038768128,1556959531105513472,1608953577475584000,1649536479961075712,2404761408063094784,2970908329832960000,3511613614414655488-s64max |
| PARAM_VALUE | 0 | dentry->d_inode->i_sb->s_export_op->get_parent | 0,8931,264940071972966400,291591359766798336,565128213429456896,893189740598853632,1241177127089143808,1474696885321834496,1812477326828269568,1893665921928286208,2210088671756947456,2437012291923775488,2483979068402987008-s64max |
| PARAM_VALUE | 1 | inode | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_link | 0 |
| PARAM_VALUE | 1 | inode->i_op | 4096-ptr_max |
| PARAM_VALUE | 1 | inode->i_op->get_link | 0,4096-ptr_max |
| PARAM_VALUE | 2 | done | 4096-ptr_max |
| PARAM_VALUE | 2 | done->fn | 0 |
| DATA_SOURCE | 1 | inode | $2 |
| CONTAINER | 1 | -8-32+0 | $(-1) |
| RX_PATH | |||
| TASK_NOT_RUNNING |