Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/nvdimm/label.c __pmem_label_update() -> nvdimm_set_config_data()

Type Parameter Key Value
PARAM_VALUE 0 ndd 4096-ptr_max
PARAM_VALUE 0 ndd->ns_next 0-s32max
PARAM_VALUE 1 offset 4096-18446744073709547520
PARAM_VALUE 2 buf 4096-ptr_max
PARAM_VALUE 3 len 0-s32max
BUF_SIZE 0 ndd s32min-(-2),1-s32max
BUF_SIZE 0 ndd s32min-(-2),1-s32max
DATA_SOURCE 0 ndd r to_ndd
DATA_SOURCE 1 offset r nd_label_offset
DATA_SOURCE 2 buf r to_label
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->mutex
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvdimm/label.c nd_label_write_index() -> nvdimm_set_config_data()

Type Parameter Key Value
PARAM_VALUE 0 ndd 4096-ptr_max
PARAM_VALUE 2 buf 4096-ptr_max
PARAM_VALUE 3 len 0-u32max
BUF_SIZE 0 ndd s32min-(-2),1-s32max
BUF_SIZE 0 ndd s32min-(-2),1-s32max
CAPPED_DATA 3 len 1
DATA_SOURCE 0 ndd $0
DATA_SOURCE 2 buf r to_namespace_index
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->mutex
LOCK2 &of->mutex
HALF_LOCKED2 &nd_mapping->lock
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct kernfs_open_file)->mutex