Loading Documentation/x86/orc-unwinder.txt +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ ORC unwinder Overview -------- The kernel CONFIG_ORC_UNWINDER option enables the ORC unwinder, which is The kernel CONFIG_UNWINDER_ORC option enables the ORC unwinder, which is similar in concept to a DWARF unwinder. The difference is that the format of the ORC data is much simpler than DWARF, which in turn allows the ORC unwinder to be much simpler and faster. Loading Makefile +2 −2 Original line number Diff line number Diff line Loading @@ -934,8 +934,8 @@ ifdef CONFIG_STACK_VALIDATION ifeq ($(has_libelf),1) objtool_target := tools/objtool FORCE else ifdef CONFIG_ORC_UNWINDER $(error "Cannot generate ORC metadata for CONFIG_ORC_UNWINDER=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") ifdef CONFIG_UNWINDER_ORC $(error "Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") else $(warning "Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") endif Loading arch/x86/Kconfig +1 −1 Original line number Diff line number Diff line Loading @@ -171,7 +171,7 @@ config X86 select HAVE_PERF_USER_STACK_DUMP select HAVE_RCU_TABLE_FREE select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_RELIABLE_STACKTRACE if X86_64 && FRAME_POINTER_UNWINDER && STACK_VALIDATION select HAVE_RELIABLE_STACKTRACE if X86_64 && UNWINDER_FRAME_POINTER && STACK_VALIDATION select HAVE_STACK_VALIDATION if X86_64 select HAVE_SYSCALL_TRACEPOINTS select HAVE_UNSTABLE_SCHED_CLOCK Loading arch/x86/Kconfig.debug +20 −19 Original line number Diff line number Diff line Loading @@ -359,28 +359,14 @@ config PUNIT_ATOM_DEBUG choice prompt "Choose kernel unwinder" default FRAME_POINTER_UNWINDER default UNWINDER_ORC if X86_64 default UNWINDER_FRAME_POINTER if X86_32 ---help--- This determines which method will be used for unwinding kernel stack traces for panics, oopses, bugs, warnings, perf, /proc/<pid>/stack, livepatch, lockdep, and more. config FRAME_POINTER_UNWINDER bool "Frame pointer unwinder" select FRAME_POINTER ---help--- This option enables the frame pointer unwinder for unwinding kernel stack traces. The unwinder itself is fast and it uses less RAM than the ORC unwinder, but the kernel text size will grow by ~3% and the kernel's overall performance will degrade by roughly 5-10%. This option is recommended if you want to use the livepatch consistency model, as this is currently the only way to get a reliable stack trace (CONFIG_HAVE_RELIABLE_STACKTRACE). config ORC_UNWINDER config UNWINDER_ORC bool "ORC unwinder" depends on X86_64 select STACK_VALIDATION Loading @@ -396,7 +382,22 @@ config ORC_UNWINDER Enabling this option will increase the kernel's runtime memory usage by roughly 2-4MB, depending on your kernel config. config GUESS_UNWINDER config UNWINDER_FRAME_POINTER bool "Frame pointer unwinder" select FRAME_POINTER ---help--- This option enables the frame pointer unwinder for unwinding kernel stack traces. The unwinder itself is fast and it uses less RAM than the ORC unwinder, but the kernel text size will grow by ~3% and the kernel's overall performance will degrade by roughly 5-10%. This option is recommended if you want to use the livepatch consistency model, as this is currently the only way to get a reliable stack trace (CONFIG_HAVE_RELIABLE_STACKTRACE). config UNWINDER_GUESS bool "Guess unwinder" depends on EXPERT ---help--- Loading @@ -411,7 +412,7 @@ config GUESS_UNWINDER endchoice config FRAME_POINTER depends on !ORC_UNWINDER && !GUESS_UNWINDER depends on !UNWINDER_ORC && !UNWINDER_GUESS bool endmenu arch/x86/configs/tiny.config +2 −2 Original line number Diff line number Diff line CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set CONFIG_GUESS_UNWINDER=y # CONFIG_FRAME_POINTER_UNWINDER is not set CONFIG_UNWINDER_GUESS=y # CONFIG_UNWINDER_FRAME_POINTER is not set Loading
Documentation/x86/orc-unwinder.txt +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ ORC unwinder Overview -------- The kernel CONFIG_ORC_UNWINDER option enables the ORC unwinder, which is The kernel CONFIG_UNWINDER_ORC option enables the ORC unwinder, which is similar in concept to a DWARF unwinder. The difference is that the format of the ORC data is much simpler than DWARF, which in turn allows the ORC unwinder to be much simpler and faster. Loading
Makefile +2 −2 Original line number Diff line number Diff line Loading @@ -934,8 +934,8 @@ ifdef CONFIG_STACK_VALIDATION ifeq ($(has_libelf),1) objtool_target := tools/objtool FORCE else ifdef CONFIG_ORC_UNWINDER $(error "Cannot generate ORC metadata for CONFIG_ORC_UNWINDER=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") ifdef CONFIG_UNWINDER_ORC $(error "Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") else $(warning "Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") endif Loading
arch/x86/Kconfig +1 −1 Original line number Diff line number Diff line Loading @@ -171,7 +171,7 @@ config X86 select HAVE_PERF_USER_STACK_DUMP select HAVE_RCU_TABLE_FREE select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_RELIABLE_STACKTRACE if X86_64 && FRAME_POINTER_UNWINDER && STACK_VALIDATION select HAVE_RELIABLE_STACKTRACE if X86_64 && UNWINDER_FRAME_POINTER && STACK_VALIDATION select HAVE_STACK_VALIDATION if X86_64 select HAVE_SYSCALL_TRACEPOINTS select HAVE_UNSTABLE_SCHED_CLOCK Loading
arch/x86/Kconfig.debug +20 −19 Original line number Diff line number Diff line Loading @@ -359,28 +359,14 @@ config PUNIT_ATOM_DEBUG choice prompt "Choose kernel unwinder" default FRAME_POINTER_UNWINDER default UNWINDER_ORC if X86_64 default UNWINDER_FRAME_POINTER if X86_32 ---help--- This determines which method will be used for unwinding kernel stack traces for panics, oopses, bugs, warnings, perf, /proc/<pid>/stack, livepatch, lockdep, and more. config FRAME_POINTER_UNWINDER bool "Frame pointer unwinder" select FRAME_POINTER ---help--- This option enables the frame pointer unwinder for unwinding kernel stack traces. The unwinder itself is fast and it uses less RAM than the ORC unwinder, but the kernel text size will grow by ~3% and the kernel's overall performance will degrade by roughly 5-10%. This option is recommended if you want to use the livepatch consistency model, as this is currently the only way to get a reliable stack trace (CONFIG_HAVE_RELIABLE_STACKTRACE). config ORC_UNWINDER config UNWINDER_ORC bool "ORC unwinder" depends on X86_64 select STACK_VALIDATION Loading @@ -396,7 +382,22 @@ config ORC_UNWINDER Enabling this option will increase the kernel's runtime memory usage by roughly 2-4MB, depending on your kernel config. config GUESS_UNWINDER config UNWINDER_FRAME_POINTER bool "Frame pointer unwinder" select FRAME_POINTER ---help--- This option enables the frame pointer unwinder for unwinding kernel stack traces. The unwinder itself is fast and it uses less RAM than the ORC unwinder, but the kernel text size will grow by ~3% and the kernel's overall performance will degrade by roughly 5-10%. This option is recommended if you want to use the livepatch consistency model, as this is currently the only way to get a reliable stack trace (CONFIG_HAVE_RELIABLE_STACKTRACE). config UNWINDER_GUESS bool "Guess unwinder" depends on EXPERT ---help--- Loading @@ -411,7 +412,7 @@ config GUESS_UNWINDER endchoice config FRAME_POINTER depends on !ORC_UNWINDER && !GUESS_UNWINDER depends on !UNWINDER_ORC && !UNWINDER_GUESS bool endmenu
arch/x86/configs/tiny.config +2 −2 Original line number Diff line number Diff line CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set CONFIG_GUESS_UNWINDER=y # CONFIG_FRAME_POINTER_UNWINDER is not set CONFIG_UNWINDER_GUESS=y # CONFIG_UNWINDER_FRAME_POINTER is not set