Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

block/blk-crypto-profile.c __blk_crypto_evict_key() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->ll_ops.keyslot_evict 1-u64max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 profile->num_slots 0
DATA_SOURCE 0 profile $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c __blk_crypto_evict_key() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 profile->num_slots 1-u32max
DATA_SOURCE 0 profile $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_derive_sw_secret() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->key_types_supported 2-u32max
PARAM_VALUE 0 profile->ll_ops.derive_sw_secret 1-u64max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
BIT_INFO 0 profile->key_types_supported 0x2,0xffffffffffffffff
RX_PATH
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_generate_key() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->key_types_supported 2-u32max
PARAM_VALUE 0 profile->ll_ops.generate_key 1-u64max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
DATA_SOURCE 0 profile $0
BIT_INFO 0 profile->key_types_supported 0x2,0xffffffffffffffff
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_get_keyslot() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->handoff_set 1
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 profile->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 profile->num_slots 1-u32max
CAPPED_DATA 0 &profile->lock 1
DATA_SOURCE 0 profile $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_get_keyslot() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->idle_slots.next 4096-ptr_max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->handoff_set 1
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 profile->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 profile->num_slots 1-u32max
CAPPED_DATA 0 &profile->idle_slots 1
CAPPED_DATA 0 &profile->lock 1
DATA_SOURCE 0 profile $0
PARAM_COMPARE 0 &profile->idle_slots == $0->idle_slots.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_get_keyslot() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->idle_slots_wait_queue.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->handoff_set 1
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 profile->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 profile->num_slots 1-u32max
CAPPED_DATA 0 &profile->idle_slots 1
CAPPED_DATA 0 &profile->lock 1
DATA_SOURCE 0 profile $0
PARAM_COMPARE 0 &profile->idle_slots != $0->idle_slots.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_get_keyslot() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->handoff_set 1
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2212933610777083904,2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 profile->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 profile->num_slots 1-u32max
CAPPED_DATA 0 &profile->idle_slots 1
CAPPED_DATA 0 &profile->lock 1
DATA_SOURCE 0 profile $0
PARAM_COMPARE 0 &profile->idle_slots != $0->idle_slots.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_import_key() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->key_types_supported 2-u32max
PARAM_VALUE 0 profile->ll_ops.import_key 1-u64max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
DATA_SOURCE 0 profile $0
BIT_INFO 0 profile->key_types_supported 0x2,0xffffffffffffffff
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

block/blk-crypto-profile.c blk_crypto_prepare_key() -> blk_crypto_hw_exit()

Type Parameter Key Value
PARAM_VALUE 0 profile 4096-ptr_max
PARAM_VALUE 0 profile->dev 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->class 0,4096-ptr_max
PARAM_VALUE 0 profile->dev->power.request 0-4
PARAM_VALUE 0 profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 profile->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 profile->dev->type 0,4096-ptr_max
PARAM_VALUE 0 profile->key_types_supported 2-u32max
PARAM_VALUE 0 profile->ll_ops.prepare_key 1-u64max
PARAM_VALUE 0 profile->lock.dep_map->name 0-255
PARAM_VALUE 0 profile->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 profile->lock.osq.tail.counter 0-s32max
DATA_SOURCE 0 profile $0
BIT_INFO 0 profile->key_types_supported 0x2,0xffffffffffffffff
NOCHECK_CALL
LOCK2 0 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock