Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/block/null_blk/main.c copy_from_nullb() -> null_cache_active()

Type Parameter Key Value
PARAM_VALUE 0 nullb 4096-ptr_max
PARAM_VALUE 0 nullb->dev 4096-ptr_max
DATA_SOURCE 0 nullb $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
LOCK2 0 &nullb->lock
TYPE_LOCK (struct nullb)->lock

drivers/block/null_blk/main.c copy_to_nullb() -> null_cache_active()

Type Parameter Key Value
PARAM_VALUE 0 nullb 4096-ptr_max
PARAM_VALUE 0 nullb->dev 4096-ptr_max
DATA_SOURCE 0 nullb $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
LOCK2 0 &nullb->lock
TYPE_LOCK (struct nullb)->lock

drivers/block/null_blk/main.c copy_to_nullb() -> null_cache_active()

Type Parameter Key Value
PARAM_VALUE 0 nullb 4096-ptr_max
PARAM_VALUE 0 nullb->dev 4096-ptr_max
DATA_SOURCE 0 nullb $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
LOCK2 0 &nullb->lock
TYPE_LOCK (struct nullb)->lock

drivers/block/null_blk/main.c null_del_dev() -> null_cache_active()

Type Parameter Key Value
PARAM_VALUE 0 nullb 4096-ptr_max
PARAM_VALUE 0 nullb->dev 4096-ptr_max
CAPPED_DATA 0 nullb->queues 1
DATA_SOURCE 0 nullb $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 nullb->disk->bdi->min_ratio
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &subsys->su_mutex
HALF_LOCKED2 global &lock

drivers/block/null_blk/main.c null_handle_discard() -> null_cache_active()

Type Parameter Key Value
PARAM_VALUE 0 nullb 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
LOCK2 0 &nullb->lock
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
TYPE_LOCK (struct nullb)->lock

drivers/block/null_blk/main.c null_handle_flush() -> null_cache_active()

Type Parameter Key Value
DATA_SOURCE 0 nullb $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read