* Re: x86/kconfig: Consolidate unwinders into multiple choice selection
@ 2017-09-05 17:09 Dave Jones
2017-09-06 21:49 ` Josh Poimboeuf
0 siblings, 1 reply; 3+ messages in thread
From: Dave Jones @ 2017-09-05 17:09 UTC (permalink / raw)
To: Linux Kernel Mailing List; +Cc: Josh Poimboeuf
On Mon, Sep 04, 2017 at 08:05:13PM +0000, Linux Kernel wrote:
> Web: https://git.kernel.org/torvalds/c/81d387190039c14edac8de2b3ec789beb899afd9
> Commit: 81d387190039c14edac8de2b3ec789beb899afd9
> Parent: a34a766ff96d9e88572e35a45066279e40a85d84
> Refname: refs/heads/master
> Author: Josh Poimboeuf <jpoimboe@redhat.com>
> AuthorDate: Tue Jul 25 08:54:24 2017 -0500
> Committer: Ingo Molnar <mingo@kernel.org>
> CommitDate: Wed Jul 26 14:05:36 2017 +0200
>
> x86/kconfig: Consolidate unwinders into multiple choice selection
>
> There are three mutually exclusive unwinders. Make that more obvious by
> combining them into a multiple-choice selection:
>
> CONFIG_FRAME_POINTER_UNWINDER
> CONFIG_ORC_UNWINDER
> CONFIG_GUESS_UNWINDER (if CONFIG_EXPERT=y)
The help texts for the various unwinders are now attached to the wrong
kconfig item.
> +choice
> + prompt "Choose kernel unwinder"
> + default FRAME_POINTER_UNWINDER
> + ---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.
This is what gets displayed, but tells me nothing about what the
benefits/downsides are of each (or even what they are; I had to read the
Kconfig file to figure out what 'GUESS' meant)
an oldconfig run ..
Choose kernel unwinder
> 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
2. ORC unwinder (ORC_UNWINDER) (NEW)
3. Guess unwinder (GUESS_UNWINDER) (NEW)
choice[1-3?]: ?
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.
Prompt: Choose kernel unwinder
Location:
-> Kernel hacking
Defined at arch/x86/Kconfig.debug:359
Selected by: m
Choose kernel unwinder
> 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
2. ORC unwinder (ORC_UNWINDER) (NEW)
3. Guess unwinder (GUESS_UNWINDER) (NEW)
choice[1-3?]:
Dave
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: x86/kconfig: Consolidate unwinders into multiple choice selection
2017-09-05 17:09 x86/kconfig: Consolidate unwinders into multiple choice selection Dave Jones
@ 2017-09-06 21:49 ` Josh Poimboeuf
2017-09-06 22:10 ` Dave Jones
0 siblings, 1 reply; 3+ messages in thread
From: Josh Poimboeuf @ 2017-09-06 21:49 UTC (permalink / raw)
To: Dave Jones; +Cc: Linux Kernel Mailing List
On Tue, Sep 05, 2017 at 01:09:53PM -0400, Dave Jones wrote:
> On Mon, Sep 04, 2017 at 08:05:13PM +0000, Linux Kernel wrote:
> > Web: https://git.kernel.org/torvalds/c/81d387190039c14edac8de2b3ec789beb899afd9
> > Commit: 81d387190039c14edac8de2b3ec789beb899afd9
> > Parent: a34a766ff96d9e88572e35a45066279e40a85d84
> > Refname: refs/heads/master
> > Author: Josh Poimboeuf <jpoimboe@redhat.com>
> > AuthorDate: Tue Jul 25 08:54:24 2017 -0500
> > Committer: Ingo Molnar <mingo@kernel.org>
> > CommitDate: Wed Jul 26 14:05:36 2017 +0200
> >
> > x86/kconfig: Consolidate unwinders into multiple choice selection
> >
> > There are three mutually exclusive unwinders. Make that more obvious by
> > combining them into a multiple-choice selection:
> >
> > CONFIG_FRAME_POINTER_UNWINDER
> > CONFIG_ORC_UNWINDER
> > CONFIG_GUESS_UNWINDER (if CONFIG_EXPERT=y)
>
> The help texts for the various unwinders are now attached to the wrong
> kconfig item.
>
> > +choice
> > + prompt "Choose kernel unwinder"
> > + default FRAME_POINTER_UNWINDER
> > + ---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.
>
> This is what gets displayed, but tells me nothing about what the
> benefits/downsides are of each (or even what they are; I had to read the
> Kconfig file to figure out what 'GUESS' meant)
>
>
> an oldconfig run ..
>
>
> Choose kernel unwinder
> > 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
> 2. ORC unwinder (ORC_UNWINDER) (NEW)
> 3. Guess unwinder (GUESS_UNWINDER) (NEW)
> choice[1-3?]: ?
>
> 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.
>
> Prompt: Choose kernel unwinder
> Location:
> -> Kernel hacking
> Defined at arch/x86/Kconfig.debug:359
> Selected by: m
>
>
>
> Choose kernel unwinder
> > 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
> 2. ORC unwinder (ORC_UNWINDER) (NEW)
> 3. Guess unwinder (GUESS_UNWINDER) (NEW)
> choice[1-3?]:
This is a quirk of the config tool. It's not very intuitive, but to see
the help for a given option you have to type the number appended with a
'?', like:
> 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
2. ORC unwinder (ORC_UNWINDER) (NEW)
choice[1-2?]: 1?
CONFIG_FRAME_POINTER_UNWINDER:
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).
Symbol: FRAME_POINTER_UNWINDER [=y]
Type : boolean
Prompt: Frame pointer unwinder
Location:
-> Kernel hacking
-> Choose kernel unwinder (<choice> [=y])
Defined at arch/x86/Kconfig.debug:367
Depends on: <choice>
Selects: FRAME_POINTER [=y]
--
Josh
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: x86/kconfig: Consolidate unwinders into multiple choice selection
2017-09-06 21:49 ` Josh Poimboeuf
@ 2017-09-06 22:10 ` Dave Jones
0 siblings, 0 replies; 3+ messages in thread
From: Dave Jones @ 2017-09-06 22:10 UTC (permalink / raw)
To: Josh Poimboeuf; +Cc: Linux Kernel Mailing List
On Wed, Sep 06, 2017 at 04:49:45PM -0500, Josh Poimboeuf wrote:
> > Choose kernel unwinder
> > > 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
> > 2. ORC unwinder (ORC_UNWINDER) (NEW)
> > 3. Guess unwinder (GUESS_UNWINDER) (NEW)
> > choice[1-3?]:
>
> This is a quirk of the config tool. It's not very intuitive, but to see
> the help for a given option you have to type the number appended with a
> '?', like:
>
> > 1. Frame pointer unwinder (FRAME_POINTER_UNWINDER) (NEW)
> 2. ORC unwinder (ORC_UNWINDER) (NEW)
> choice[1-2?]: 1?
Hey, I learned something today!
thanks,
Dave
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-09-06 22:10 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-05 17:09 x86/kconfig: Consolidate unwinders into multiple choice selection Dave Jones
2017-09-06 21:49 ` Josh Poimboeuf
2017-09-06 22:10 ` Dave Jones
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome