Defined in 2 files as a function:
- drivers/infiniband/core/multicast.c, line 228 (as a function)
- drivers/infiniband/hw/mlx4/mcg.c, line 474 (as a function)
Referenced in 2 files:
Smatch caller information:
drivers/infiniband/hw/mlx4/mcg.c join_group() -> adjust_membership()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | group | 4096-ptr_max |
| PARAM_VALUE | 1 | join_state | 0-15 |
| PARAM_VALUE | 2 | inc | 1 |
| CAPPED_DATA | 1 | join_state | 1 |
| DATA_SOURCE | 0 | group | $0 |
| NOCHECK_CALL | |||
| LOCK2 | 0 | &group->lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct mcast_group)->lock |
drivers/infiniband/hw/mlx4/mcg.c leave_group() -> adjust_membership()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | group | 4096-ptr_max |
| PARAM_VALUE | 1 | join_state | 1-255 |
| PARAM_VALUE | 2 | inc | (-1) |
| DATA_SOURCE | 0 | group | $0 |
| DATA_SOURCE | 1 | join_state | $2 |
| NOCHECK_CALL | |||
| LOCK2 | 0 | &group->lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct mcast_group)->lock |
drivers/infiniband/core/multicast.c ib_sa_free_multicast() -> adjust_membership()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | group | 4096-ptr_max |
| PARAM_VALUE | 2 | inc | (-1) |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| LOCK2 | 0 | &group->lock | |
| TYPE_LOCK | (struct mcast_group)->lock |
drivers/infiniband/core/multicast.c join_group() -> adjust_membership()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | group | 4096-ptr_max |
| PARAM_VALUE | 2 | inc | 1 |
| CAPPED_DATA | 1 | join_state | 1 |
| DATA_SOURCE | 0 | group | $0 |
| DATA_SOURCE | 1 | join_state | $2 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| LOCK2 | 0 | &group->lock | |
| TYPE_LOCK | (struct mcast_group)->lock |
drivers/infiniband/core/multicast.c process_group_error() -> adjust_membership()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | group | 4096-ptr_max |
| PARAM_VALUE | 2 | inc | (-1) |
| CAPPED_DATA | 0 | &group->active_list | 1 |
| DATA_SOURCE | 0 | group | $0 |
| PARAM_COMPARE | 0 | &group->active_list | != $0->active_list.next |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| LOCK2 | 0 | &group->lock | |
| TYPE_LOCK | (struct mcast_group)->lock |