Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 32 files:

Smatch caller information:

lib/tests/test_kprobes.c stacktrace_internal_return_handler() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 6316773592768913408
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 128

lib/tests/test_kprobes.c stacktrace_return_handler() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 6316773592768913408
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 128

mm/slub.c set_track_prepare() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4071145451121352704
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 3
BUF_SIZE 0 store 128
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size

drivers/md/persistent-data/dm-block-manager.c __add_holder() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 10
PARAM_VALUE 2 skipnr 2
BUF_SIZE 0 store 80
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &lock->lock
TYPE_LOCK (struct block_lock)->lock

lib/ref_tracker.c ref_tracker_alloc() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 8154739839653556224
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 128
UNITS 1 size unit_array_size

lib/ref_tracker.c ref_tracker_free() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 350391654802997248
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 128
UNITS 1 size unit_array_size

mm/kfence/report.c kfence_report_error() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4096-ptr_max
PARAM_VALUE 1 size 64
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 512
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &meta->lock
LOCK2 flags
TYPE_LOCK (struct kfence_metadata)->lock

mm/kfence/core.c __kfence_alloc() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 8113415261922422784
PARAM_VALUE 1 size 64
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 512
RX_PATH
TASK_NOT_RUNNING

mm/kfence/core.c metadata_update_state() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 64
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 512
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &meta->lock
LOCK2 flags
TYPE_LOCK (struct kfence_metadata)->lock

kernel/backtracetest.c backtrace_test_saved() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 2617787548013420544
PARAM_VALUE 1 size 8
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 64
UNITS 1 size unit_array_size

kernel/trace/trace_osnoise.c timerlat_save_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 256
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 2048
DATA_SOURCE 2 skipnr $0
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
HALF_LOCKED2 irq

kernel/trace/trace_events_hist.c __update_field_vars() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4096-ptr_max
PARAM_VALUE 1 size 31
PARAM_VALUE 2 skipnr 5
BUF_SIZE 0 store 248
BUF_SIZE 0 store 248
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 store unit_byte

kernel/trace/trace_events_hist.c event_hist_trigger() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 31
PARAM_VALUE 2 skipnr 5
BUF_SIZE 0 store 248
BUF_SIZE 0 store 248
MEM_ZERO 0 store
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/trace/trace_events_hist.c hist_trigger_elt_update() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4096-ptr_max
PARAM_VALUE 1 size 31
PARAM_VALUE 2 skipnr 5
BUF_SIZE 0 store 248
BUF_SIZE 0 store 248
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 store unit_byte

drivers/gpu/drm/display/drm_dp_mst_topology.c __topology_ref_save() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4016505792579252224
PARAM_VALUE 1 size 8
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 64
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
LOCK2 &mgr->topology_ref_history_lock
HALF_LOCKED2 &mgr->lock
TYPE_LOCK (struct drm_dp_mst_topology_mgr)->topology_ref_history_lock

samples/fprobe/fprobe_example.c show_backtrace() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4013865056149471232
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 2
BUF_SIZE 0 store 128
HALF_LOCKED2 rcu_read

drivers/gpu/drm/drm_mm.c save_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 463566176339877888
PARAM_VALUE 1 size 32
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 256
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
HALF_LOCKED2 &i915->mm.stolen_lock
HALF_LOCKED2 &vm->mm_lock

kernel/locking/lockdep.c save_trace() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 1-2097146,2097149
PARAM_VALUE 2 skipnr 3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/drm_modeset_lock.c __drm_stack_depot_save() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 494873238662189056
PARAM_VALUE 1 size 8
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 64
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size
HALF_LOCKED2 &dev->mode_config.mutex
HALF_LOCKED2 &display->drm->mode_config.connection_mutex
HALF_LOCKED2 &display->drm->mode_config.mutex
HALF_LOCKED2 &helper->lock
HALF_LOCKED2 &lock->mutex
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &pool->lock

lib/fault-inject.c fail_stacktrace() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 8568324585984593920
PARAM_VALUE 1 size 1-u32max
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 256
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 size 1-u32max

kernel/dma/debug.c dma_entry_alloc() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 5
PARAM_VALUE 2 skipnr 1
BUF_SIZE 0 store 40
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size

kernel/trace/trace.c __ftrace_trace_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 1024
BUF_SIZE 0 store 8192
DATA_SOURCE 2 skipnr $3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size

fs/btrfs/ref-verify.c __save_stack_trace() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 2
BUF_SIZE 0 store 128
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &buf->lock

kernel/trace/trace_stack.c check_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4409626789856096256
PARAM_VALUE 1 size 499
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 4000
PREEMPT_ADD
LOCK2 flags

drivers/md/dm-bufio.c buffer_record_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 1 size 10
PARAM_VALUE 2 skipnr 2
BUF_SIZE 0 store 80
RX_PATH
TASK_NOT_RUNNING

mm/kasan/common.c kasan_save_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 2634221086456811520
PARAM_VALUE 1 size 64
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 512
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size

mm/kmemleak.c set_track_prepare() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 6065202170242060288
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 3
BUF_SIZE 0 store 128
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size

mm/page_owner.c create_dummy_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4273235962607792128
PARAM_VALUE 1 size 4
PARAM_VALUE 2 skipnr 0
BUF_SIZE 0 store 32
UNITS 1 size unit_array_size
HALF_LOCKED2 irq

mm/page_owner.c save_stack() -> stack_trace_save()

Type Parameter Key Value
PARAM_VALUE 0 store 4312403848149225472
PARAM_VALUE 1 size 16
PARAM_VALUE 2 skipnr 2
BUF_SIZE 0 store 128
RX_PATH
TASK_NOT_RUNNING
UNITS 1 size unit_array_size