[PATCH 0/6] x86/traps: cleanup DO_ERROR*() to prepare for uprobes fixes

From: Oleg Nesterov
Date: Thu May 08 2014 - 15:12:14 EST


Hello.

On 05/06, Oleg Nesterov wrote:
>
> Well, actually we are not 100% fine because si_addr can be wrong. But this is
> not invalid_op-specific, we need to fix this anyway and the fix is simple.
>
> I do not want to discuss this now, but I am going to make another series later
> which adds something like uprobe_instruction_pointer(regs). It can (should) be
> used by DO_ERROR_INFO() (perhaps by something else, not sure about math_error())

So we basically need a very simple fix,

- DO_ERROR_INFO(..., regs->ip)
+ DO_ERROR_INFO(..., uprobe_get_trap_addr(regs))

but it is not easy to change these define's, this series tries to cleanup and
simplify this code first.

Note: initially I was going to send more changes. For example, after this series
we can convert math_error() into the "normal" DO_ERROR() user, and most probably
we can do the same with do_general_protection().

But let me send the initial changes first for review. If they pass the review
and if nobody objects, I'd like to route them along with the pending uprobes
fixes.

Oleg.

arch/x86/include/asm/traps.h | 1 -
arch/x86/kernel/traps.c | 107 +++++++++++++++++++++++------------------
2 files changed, 60 insertions(+), 48 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/