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

Reply via email to