Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

drivers/platform/x86/lenovo/think-lmi.c cert_to_password_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/platform/x86/lenovo/think-lmi.c certificate_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/platform/x86/lenovo/think-lmi.c current_value_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/platform/x86/lenovo/think-lmi.c debug_cmd_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/platform/x86/lenovo/think-lmi.c new_password_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/platform/x86/lenovo/think-lmi.c save_signature_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/platform/x86/lenovo/think-lmi.c signature_store() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 4096-ptr_max
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $2
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/gpio/gpiolib-cdev.c make_irq_label() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 1-u64max
PARAM_VALUE 1 old 47
PARAM_VALUE 2 new 58
PARAM_VALUE 3 gfp 3264
DATA_SOURCE 0 src $0
LOCK2 _T->lock

drivers/base/core.c device_get_devnode() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 1 old 33
PARAM_VALUE 2 new 47
PARAM_VALUE 3 gfp 3264
BUF_SIZE 0 src 1-s32max
RX_PATH
TASK_NOT_RUNNING

lib/dynamic_debug.c param_set_dyndbg_classnames() -> kstrdup_and_replace()

Type Parameter Key Value
PARAM_VALUE 0 src 0,4096-18446744073709547521
PARAM_VALUE 1 old 10
PARAM_VALUE 2 new 0
PARAM_VALUE 3 gfp 3264
BUF_SIZE 0 src (-1),1-s32max
BUF_SIZE 0 src (-1),1-s32max
DATA_SOURCE 0 src $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex