On Wed, Oct 04, 2017 at 11:23:15AM +0200, Jiri Slaby wrote: > We need a reliable stack unwinder for kernel live patching, but we do > not want to enable frame pointers for performance reasons. So let ORC be > a reliable stack unwinder on x86 as it performs nicely wrt reliability > of traces. > > Signed-off-by: Jiri Slaby <[email protected]> > Cc: Josh Poimboeuf <[email protected]> > Cc: Thomas Gleixner <[email protected]> > Cc: Ingo Molnar <[email protected]> > Cc: "H. Peter Anvin" <[email protected]> > Cc: [email protected] > --- > > I am sending this as an RFC. Do you still consider ORC to be not-enough > reliable?
Off the top of my head, at least the following is missing: - save_stack_trace_reliable() assumes that kernel mode pt_regs on the stack make the stack trace unreliable. This is an FP-specific assumption which no longer applies for ORC. - The ORC unwinder needs to set unwind_state.error if it doesn't reach all the way to the end (user pt_regs). -- Josh

