Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
block/blk-iocost.c adjust_inuse_and_calc_cost() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->level | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | hw_activep | 0 |
| PARAM_VALUE | 2 | hw_inusep | 6861452303343411200 |
| DATA_SOURCE | 0 | iocg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &bio->bi_bdev->bd_queue->queue_lock |
block/blk-iocost.c adjust_inuse_and_calc_cost() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->hweight_active | 1-u32max |
| PARAM_VALUE | 0 | iocg->hweight_inuse | 1-u32max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->level | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | hw_activep | 0 |
| PARAM_VALUE | 2 | hw_inusep | 6861452303343411200 |
| CAPPED_DATA | 0 | &iocg->active_list | 1 |
| DATA_SOURCE | 0 | iocg | $0 |
| PARAM_COMPARE | 0 | iocg->active | != $0->inuse |
| PARAM_COMPARE | 0 | &iocg->active_list | != $0->active_list.next |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ioc->lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &bio->bi_bdev->bd_queue->queue_lock | ||
| TYPE_LOCK | (struct ioc)->lock |
block/blk-iocost.c ioc_check_iocgs() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 0 |
| PARAM_VALUE | 2 | hw_inusep | 1240953081879666688 |
| CAPPED_DATA | 0 | &iocg->active_list | 1 |
| PARAM_COMPARE | 0 | &iocg->waitq.head | == $0->waitq.head.next |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ioc->lock | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &iocg->waitq.lock | |
| TYPE_LOCK | (struct ioc)->lock | ||
| TYPE_LOCK | (struct wait_queue_head)->lock |
block/blk-iocost.c ioc_timer_fn() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 2095492511570329600 |
| PARAM_VALUE | 2 | hw_inusep | 2214592718387847168 |
| CAPPED_DATA | 0 | &iocg->active_list | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ioc->lock | ||
| LOCK2 | irq | ||
| TYPE_LOCK | (struct ioc)->lock |
block/blk-iocost.c ioc_timer_fn() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 5166254738227347456 |
| PARAM_VALUE | 2 | hw_inusep | 8237357636998557696 |
| CAPPED_DATA | 0 | &iocg->active_list | 1 |
| CAPPED_DATA | 0 | &iocg->surplus_list | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ioc->lock | ||
| LOCK2 | irq | ||
| TYPE_LOCK | (struct ioc)->lock |
block/blk-iocost.c iocg_kick_delay() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 2736467250754310144 |
| PARAM_VALUE | 2 | hw_inusep | 0 |
| DATA_SOURCE | 0 | iocg | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &iocg->waitq.lock | |
| HALF_LOCKED2 | &ioc->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | 0 | &iocg->ioc->lock | |
| TYPE_LOCK | (struct wait_queue_head)->lock |
block/blk-iocost.c iocg_kick_waitq() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 3328612911632715776 |
| PARAM_VALUE | 2 | hw_inusep | 0 |
| DATA_SOURCE | 0 | iocg | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &iocg->waitq.lock | |
| HALF_LOCKED2 | &ioc->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | 0 | &iocg->ioc->lock | |
| TYPE_LOCK | (struct wait_queue_head)->lock |
block/blk-iocost.c iocg_kick_waitq() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 0 |
| PARAM_VALUE | 2 | hw_inusep | 6877714444579045384 |
| PARAM_VALUE | 2 | *hw_inusep | 0 |
| DATA_SOURCE | 0 | iocg | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | 0 | &iocg->waitq.lock | |
| HALF_LOCKED2 | &ioc->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | 0 | &iocg->ioc->lock | |
| TYPE_LOCK | (struct wait_queue_head)->lock |
block/blk-iocost.c transfer_surpluses() -> current_hweight()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 1 | hw_activep | 6172693238701953024 |
| PARAM_VALUE | 2 | hw_inusep | 0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ioc->lock | ||
| LOCK2 | irq | ||
| TYPE_LOCK | (struct ioc)->lock |