Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
kernel/events/uprobes.c uprobe_apply() -> register_for_each_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | uprobe | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->register_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | uprobe->register_rwsem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | uprobe->register_rwsem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | new | 0,4096-ptr_max |
| CAPPED_DATA | 0 | &uprobe->register_rwsem | 1 |
| DATA_SOURCE | 0 | uprobe | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &event_mutex | ||
| LOCK2 | 0 | &uprobe->register_rwsem | |
| HALF_LOCKED2 | &p_event->group_leader->ctx->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct uprobe)->register_rwsem |
kernel/events/uprobes.c uprobe_register() -> register_for_each_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | uprobe | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | uprobe->consumers.next | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->consumers.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->consumers.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->consumers.next->prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->consumers.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->consumers.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->inode->i_mapping | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->register_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | uprobe->register_rwsem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | uprobe->register_rwsem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | new | 4096-ptr_max |
| PARAM_VALUE | 1 | new->cons_node.next | 4096-ptr_max |
| PARAM_VALUE | 1 | new->cons_node.prev | 4096-ptr_max |
| BUF_SIZE | 0 | uprobe | (-1),536 |
| BUF_SIZE | 0 | uprobe | (-1),536 |
| CAPPED_DATA | 0 | &uprobe->register_rwsem | 1 |
| DATA_SOURCE | 0 | uprobe | r alloc_uprobe |
| DATA_SOURCE | 1 | new | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | 0 | &uprobe->register_rwsem | |
| TYPE_LOCK | (struct uprobe)->register_rwsem |
kernel/events/uprobes.c uprobe_unregister_nosync() -> register_for_each_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | uprobe | 4096-ptr_max |
| PARAM_VALUE | 0 | uprobe->arch.ops->abort | 0,2436815697590460416 |
| PARAM_VALUE | 0 | uprobe->arch.ops->emulate | 0,5258062336063995904,8263671918886490112 |
| PARAM_VALUE | 0 | uprobe->arch.ops->post_xol | 0,2310730659778097152,5473417496896622592 |
| PARAM_VALUE | 0 | uprobe->arch.ops->pre_xol | 0,7351772129661063168 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | uprobe->consumer_rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | uprobe->inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry | 0,8684,447817974243774464,687732489194512384,742201802719268864,868497899885588480,1471448175530500096,2021658383390310400,2445877819203563520,2512819722689847296,2649270699546726400,2761259683714371584,2893332316235677696-s64max |
| PARAM_VALUE | 0 | uprobe->inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | uprobe->inode->i_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | uprobe->register_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | new | 0 |
| BUF_SIZE | 0 | uprobe | (-1),536 |
| BUF_SIZE | 0 | uprobe | (-1),536 |
| CAPPED_DATA | 0 | &uprobe->register_rwsem | 1 |
| DATA_SOURCE | 0 | uprobe | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | 0 | &uprobe->register_rwsem | |
| TYPE_LOCK | (struct uprobe)->register_rwsem |