[PATCH 3/3] x86: do not save callee-preserved registers around lockdep_sys_exit_thunk

2015-03-25 Thread Denys Vlasenko
Internally, lockdep_sys_exit_thunk saves callee-clobbered registers,
and calls a C function, lockdep_sys_exit. Thus, callee-preserved registers
won't be mangled, there is no need to save them.

Patch was run-tested.

Signed-off-by: Denys Vlasenko 
CC: Linus Torvalds 
CC: Steven Rostedt 
CC: Ingo Molnar 
CC: Borislav Petkov 
CC: "H. Peter Anvin" 
CC: Andy Lutomirski 
CC: Oleg Nesterov 
CC: Frederic Weisbecker 
CC: Alexei Starovoitov 
CC: Will Drewry 
CC: Kees Cook 
CC: x...@kernel.org
CC: linux-kernel@vger.kernel.org
---
 arch/x86/include/asm/irqflags.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/x86/include/asm/irqflags.h b/arch/x86/include/asm/irqflags.h
index 19355f3..9a63eae 100644
--- a/arch/x86/include/asm/irqflags.h
+++ b/arch/x86/include/asm/irqflags.h
@@ -179,9 +179,7 @@ static inline int arch_irqs_disabled(void)
 #define LOCKDEP_SYS_EXIT_IRQ \
TRACE_IRQS_ON; \
sti; \
-   SAVE_EXTRA_REGS; \
call lockdep_sys_exit_thunk; \
-   RESTORE_EXTRA_REGS; \
cli; \
TRACE_IRQS_OFF;
 #  else
-- 
1.8.1.4

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


Re: [PATCH 3/3] x86: do not save callee-preserved registers around lockdep_sys_exit_thunk

2015-03-02 Thread Peter Zijlstra
On Sun, Mar 01, 2015 at 08:16:18AM -0800, Andy Lutomirski wrote:
> On Fri, Feb 27, 2015 at 4:29 PM, Denys Vlasenko  wrote:
> > Internally, lockdep_sys_exit_thunk saves callee-clobbered registers,
> > and calls a C function, lockdep_sys_exix. Thus, callee-preserved
> > won't be mangled, there is no need to save them.
> >
> > Patch was run-tested.
> 
> Peterz, I think this was your code.

It was, I'm forever unsure on when what register are saved by which
macros/functions.

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


Re: [PATCH 3/3] x86: do not save callee-preserved registers around lockdep_sys_exit_thunk

2015-03-01 Thread Andy Lutomirski
On Fri, Feb 27, 2015 at 4:29 PM, Denys Vlasenko  wrote:
> Internally, lockdep_sys_exit_thunk saves callee-clobbered registers,
> and calls a C function, lockdep_sys_exix. Thus, callee-preserved
> won't be mangled, there is no need to save them.
>
> Patch was run-tested.

Peterz, I think this was your code.

--Andy

>
> Signed-off-by: Denys Vlasenko 
> CC: Linus Torvalds 
> CC: Steven Rostedt 
> CC: Ingo Molnar 
> CC: Borislav Petkov 
> CC: "H. Peter Anvin" 
> CC: Andy Lutomirski 
> CC: Oleg Nesterov 
> CC: Frederic Weisbecker 
> CC: Alexei Starovoitov 
> CC: Will Drewry 
> CC: Kees Cook 
> CC: x...@kernel.org
> CC: linux-kernel@vger.kernel.org
> ---
>  arch/x86/include/asm/irqflags.h | 2 --
>  1 file changed, 2 deletions(-)
>
> diff --git a/arch/x86/include/asm/irqflags.h b/arch/x86/include/asm/irqflags.h
> index 19355f3..9a63eae 100644
> --- a/arch/x86/include/asm/irqflags.h
> +++ b/arch/x86/include/asm/irqflags.h
> @@ -179,9 +179,7 @@ static inline int arch_irqs_disabled(void)
>  #define LOCKDEP_SYS_EXIT_IRQ \
> TRACE_IRQS_ON; \
> sti; \
> -   SAVE_EXTRA_REGS; \
> call lockdep_sys_exit_thunk; \
> -   RESTORE_EXTRA_REGS; \
> cli; \
> TRACE_IRQS_OFF;
>  #  else
> --
> 1.8.1.4
>



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


[PATCH 3/3] x86: do not save callee-preserved registers around lockdep_sys_exit_thunk

2015-02-27 Thread Denys Vlasenko
Internally, lockdep_sys_exit_thunk saves callee-clobbered registers,
and calls a C function, lockdep_sys_exix. Thus, callee-preserved
won't be mangled, there is no need to save them.

Patch was run-tested.

Signed-off-by: Denys Vlasenko 
CC: Linus Torvalds 
CC: Steven Rostedt 
CC: Ingo Molnar 
CC: Borislav Petkov 
CC: "H. Peter Anvin" 
CC: Andy Lutomirski 
CC: Oleg Nesterov 
CC: Frederic Weisbecker 
CC: Alexei Starovoitov 
CC: Will Drewry 
CC: Kees Cook 
CC: x...@kernel.org
CC: linux-kernel@vger.kernel.org
---
 arch/x86/include/asm/irqflags.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/x86/include/asm/irqflags.h b/arch/x86/include/asm/irqflags.h
index 19355f3..9a63eae 100644
--- a/arch/x86/include/asm/irqflags.h
+++ b/arch/x86/include/asm/irqflags.h
@@ -179,9 +179,7 @@ static inline int arch_irqs_disabled(void)
 #define LOCKDEP_SYS_EXIT_IRQ \
TRACE_IRQS_ON; \
sti; \
-   SAVE_EXTRA_REGS; \
call lockdep_sys_exit_thunk; \
-   RESTORE_EXTRA_REGS; \
cli; \
TRACE_IRQS_OFF;
 #  else
-- 
1.8.1.4

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