Home
last modified time | relevance | path

Searched full:stacks (Results 1 – 25 of 232) sorted by relevance

12345678910

/linux-6.14.4/Documentation/arch/x86/
Dkernel-stacks.rst4 Kernel Stacks
7 Kernel stacks on x86-64 bit
15 active thread. These thread stacks are THREAD_SIZE (4*PAGE_SIZE) big.
16 These stacks contain useful data as long as a thread is alive or a
20 In addition to the per thread stacks, there are specialized stacks
21 associated with each CPU. These stacks are only used while the kernel
23 specialized stacks contain no useful data. The main CPU stacks are:
30 the split thread and interrupt stacks on i386, this gives more room
38 hardware stacks cannot nest without races.
46 point to dedicated stacks; each stack can be a different size.
[all …]
/linux-6.14.4/Documentation/mm/
Dvmalloced-kernel-stacks.rst15 series that introduced the `Virtually Mapped Kernel Stacks feature
25 Virtually mapped kernel stacks with guard pages cause kernel stack
30 support for virtually mapped stacks with guard pages. This feature
42 Architectures that can support Virtually Mapped Kernel Stacks should
45 - vmalloc space must be large enough to hold many kernel stacks. This
47 - Stacks in vmalloc space need to work reliably. For example, if
61 mapped task stacks. This option depends on HAVE_ARCH_VMAP_STACK.
63 - Enable this if you want the use virtually-mapped kernel stacks
94 - Allocated stacks are cached and later reused by new threads, so memcg
95 accounting is performed manually on assigning/releasing stacks to tasks.
[all …]
Dpage_owner.rst27 It can also be used to show all the stacks and their current number of
76 cat /sys/kernel/debug/page_owner_stacks/show_stacks > stacks.txt
77 cat stacks.txt
/linux-6.14.4/arch/arm64/include/asm/stacktrace/
Dcommon.h26 * @stacks: An array of stacks which can be unwound.
27 * @nr_stacks: The number of stacks in @stacks.
34 struct stack_info *stacks; member
83 info = &state->stacks[i]; in unwind_find_stack()
118 * Note that stacks can nest in several valid orders, e.g. in unwind_consume_stack()
/linux-6.14.4/lib/
Dref_tracker.c28 } stacks[]; member
37 stats = kmalloc(struct_size(stats, stacks, limit), in ref_tracker_get_stats()
50 if (stats->stacks[i].stack_handle == stack) in ref_tracker_get_stats()
55 stats->stacks[i].stack_handle = stack; in ref_tracker_get_stats()
56 stats->stacks[i].count = 0; in ref_tracker_get_stats()
59 ++stats->stacks[i].count; in ref_tracker_get_stats()
107 stack = stats->stacks[i].stack_handle; in __ref_tracker_dir_pr_ostream()
111 stats->stacks[i].count, stats->total, sbuf); in __ref_tracker_dir_pr_ostream()
112 skipped -= stats->stacks[i].count; in __ref_tracker_dir_pr_ostream()
/linux-6.14.4/arch/sh/
DKconfig.debug37 bool "Use 4Kb for kernel stacks instead of 8Kb"
44 will also use IRQ stacks to compensate for the reduced stackspace.
47 bool "Use separate kernel stacks when processing interrupts"
50 If you say Y here the kernel will use separate kernel stacks
52 overflowing the process kernel stacks.
/linux-6.14.4/Documentation/arch/arm64/
Dgcs.rst32 control stacks with checks to ensure that the new stack is a valid
37 shadow stacks rather than GCS.
61 2. Enabling and disabling Guarded Control Stacks
113 3. Allocation of Guarded Control Stacks
129 * Additional Guarded Control Stacks can be allocated using the
132 * Stacks allocated using map_shadow_stack() can optionally have an end of
140 * Stacks allocated using map_shadow_stack() must have a size which is a
/linux-6.14.4/arch/arm64/kvm/hyp/nvhe/
Dstacktrace.c123 struct stack_info stacks[] = { in pkvm_save_backtrace() local
128 .stacks = stacks, in pkvm_save_backtrace()
129 .nr_stacks = ARRAY_SIZE(stacks), in pkvm_save_backtrace()
/linux-6.14.4/drivers/gpu/drm/panthor/
Dpanthor_device.c51 ptdev->clks.stacks = devm_clk_get_optional(ptdev->base.dev, "stacks"); in panthor_clk_init()
52 if (IS_ERR(ptdev->clks.stacks)) in panthor_clk_init()
54 PTR_ERR(ptdev->clks.stacks), in panthor_clk_init()
55 "get 'stacks' clock failed"); in panthor_clk_init()
465 ret = clk_prepare_enable(ptdev->clks.stacks); in panthor_device_resume()
518 clk_disable_unprepare(ptdev->clks.stacks); in panthor_device_resume()
567 clk_disable_unprepare(ptdev->clks.stacks); in panthor_device_suspend()
/linux-6.14.4/arch/x86/kernel/
Dfred.c17 * "the stack you pointed me to is broken." Thus, always change stacks
78 * The purpose of separate stacks for NMI, #DB and #MC *in the kernel* in cpu_init_fred_rsps()
88 /* The FRED equivalents to IST stacks... */ in cpu_init_fred_rsps()
Didt.c61 * stacks work only after cpu_init().
80 * cpu_init() is invoked. Interrupt stacks cannot be used at that point and
218 * On X8664 these traps do not use interrupt stacks as they can't work
243 * stacks work only after cpu_init().
252 * On X8664 this does not use interrupt stacks as they can't work before
Ddumpstack.c202 * Iterate through the stacks, starting with the current stack pointer. in show_trace_log_lvl()
205 * x86-64 can have several stacks: in show_trace_log_lvl()
208 * - HW exception stacks (double fault, nmi, debug, mce) in show_trace_log_lvl()
211 * x86-32 can have up to four stacks: in show_trace_log_lvl()
/linux-6.14.4/arch/arm64/kvm/
Dstacktrace.c182 struct stack_info stacks[] = { in hyp_dump_backtrace() local
187 .stacks = stacks, in hyp_dump_backtrace()
188 .nr_stacks = ARRAY_SIZE(stacks), in hyp_dump_backtrace()
/linux-6.14.4/Documentation/dev-tools/
Dkmemleak.rst47 enable the task stacks scanning (default)
49 disable the tasks stacks scanning
101 2. scan the memory starting with the data section and stacks, checking
187 kmemleak_erase functions (see above). The task stacks also increase the
198 stacks. Kmemleak defines MSECS_MIN_AGE (defaulting to 1000) representing
/linux-6.14.4/arch/powerpc/include/asm/
Dirq.h38 * Per-cpu stacks for handling critical, debug and machine check
47 * Per-cpu stacks for handling hard and soft interrupts.
/linux-6.14.4/samples/fprobe/
Dfprobe_example.c44 unsigned long stacks[BACKTRACE_DEPTH]; in show_backtrace() local
47 len = stack_trace_save(stacks, BACKTRACE_DEPTH, 2); in show_backtrace()
48 stack_trace_print(stacks, len, 24); in show_backtrace()
/linux-6.14.4/arch/arm64/kernel/
Dstacktrace.c299 * Per-cpu stacks are only accessible when unwinding the current task in a
310 * SDEI stacks are only accessible when unwinding the current task in an NMI
332 struct stack_info stacks[] = { in kunwind_stack_walk() local
348 .stacks = stacks, in kunwind_stack_walk()
349 .nr_stacks = ARRAY_SIZE(stacks), in kunwind_stack_walk()
Dsdei.c26 * VMAP'd stacks checking for stack overflow on exception using sp as a scratch
27 * register, meaning SDEI has to switch to its own stack. We need two stacks as
32 * For now, we allocate stacks when the driver is probed.
/linux-6.14.4/arch/parisc/
DKconfig332 bool "Use separate kernel stacks when processing interrupts"
335 If you say Y here the kernel will use separate kernel stacks
337 overflowing the process kernel stacks.
/linux-6.14.4/Documentation/devicetree/bindings/gpu/
Darm,mali-valhall-csf.yaml48 - const: stacks
126 clock-names = "core", "coregroup", "stacks";
/linux-6.14.4/arch/x86/include/asm/
Dcpu_entry_area.h35 /* The exception stacks' physical storage. No guard pages required */
116 * Exception stacks used for IST entries with guard pages.
/linux-6.14.4/tools/perf/scripts/python/
Dstackcollapse.py15 # perf script report stackcollapse > out.stacks-folded
48 help="do not separate stacks according to comm"),
Dflamegraph.py39 const stacks = [/** @flamegraph_json **/];
45 .datum(stacks[0])
203 output_fn = self.args.output or "stacks.json"
/linux-6.14.4/include/linux/
Dbinfmts.h135 #define EXSTACK_DISABLE_X 1 /* Disable executable stacks */
136 #define EXSTACK_ENABLE_X 2 /* Enable executable stacks */
/linux-6.14.4/arch/powerpc/kernel/
Dsetup_64.c691 * This is used to allocate PACAs and various interrupt stacks that
722 panic("cannot allocate stacks"); in alloc_stack()
733 * Interrupt stacks must be in the first segment since we in irqstack_early_init()
780 * Emergency stacks must be under 256MB, we cannot afford to take in emergency_stack_init()
784 * Since we use these as temporary stacks during secondary CPU in emergency_stack_init()
789 * The IRQ stacks allocated elsewhere in this file are zeroed and in emergency_stack_init()
791 * to have emergency stacks available as early as possible. in emergency_stack_init()

12345678910