Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

lib/iov_iter.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 0 _dst 4096-ptr_max
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
NOSPEC 2 size
NOSPEC 2 size
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 size 0-s32max[c]
USER_DATA 2 size 0-s32max[c]
UNITS 0 _dst unit_byte
UNITS 1 _src unit_byte
UNITS 2 size unit_byte
USER_PTR 0 _dst
HALF_LOCKED2 rcu_read

drivers/nvdimm/pmem.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 _src unit_byte
UNITS 2 size unit_byte

drivers/md/dm-pcache/cache_segment.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 1 _src 4096-ptr_max
PARAM_VALUE 2 size 16,24
BUF_SIZE 1 _src 16,24
BUF_SIZE 1 _src 16,24
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
HARD_MAX 2 size 24
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 size unit_byte
HALF_LOCKED2 &cache_seg->info_lock

drivers/nvdimm/claim.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 0 _dst 4096-ptr_max
PARAM_VALUE 2 size 1-u64max
BUF_SIZE 1 _src (-1),4,4096,2097152
BUF_SIZE 1 _src (-1),4,4096,2097152
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 _src->nfree

drivers/md/dm-pcache/cache_key.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 1 _src 4096-ptr_max
BUF_SIZE 1 _src 24
BUF_SIZE 1 _src 24
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 _dst unit_byte
UNITS 2 size unit_byte
LOCK2 &cache->key_head_lock
LOCK2 &kset->kset_lock
HALF_LOCKED2 &cache_subtree->tree_lock
TYPE_LOCK (struct pcache_cache)->key_head_lock
TYPE_LOCK (struct pcache_cache_kset)->kset_lock

drivers/md/dm-pcache/cache_dev.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 0 _dst 4096-ptr_max
PARAM_VALUE 1 _src 8097940799167340544
PARAM_VALUE 2 size 24
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
NOCHECK_CALL
UNITS 2 size unit_byte
HALF_LOCKED2 &md->type_lock

drivers/dax/fsdev.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 1 _src 18379471554275704832,18446612682070032384
PARAM_VALUE 2 size 4096
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 size unit_byte
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 global &dax_srcu

drivers/md/dm-writecache.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
BUF_SIZE 0 _dst (-1),4,8
BUF_SIZE 0 _dst (-1),4,8
BUF_SIZE 1 _src (-1),4,8,16
BUF_SIZE 1 _src (-1),4,8,16
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 _dst unit_byte
UNITS 2 size unit_byte
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &wc->lock

arch/x86/kernel/crash.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 0 _dst 18379471554275704832,18446612682070032384
PARAM_VALUE 1 _src 0
PARAM_VALUE 2 size 0
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 size unit_byte
LOCK2 global &__crash_hotplug_lock

drivers/md/dm-pcache/cache.c memcpy_flushcache() -> __memcpy_flushcache()

Type Parameter Key Value
PARAM_VALUE 0 _dst 4096-ptr_max
PARAM_VALUE 1 _src 4096-ptr_max
PARAM_VALUE 2 size 16,24
BUF_SIZE 1 _src 16,24
BUF_SIZE 1 _src 16,24
DATA_SOURCE 0 _dst $0
DATA_SOURCE 1 _src $1
DATA_SOURCE 2 size $2
HARD_MAX 2 size 24
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 size unit_byte