* [PATCH] x86/calling.h: remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64
@ 2016-01-18 14:13 Alexander Kuleshov
2016-01-18 17:50 ` Andy Lutomirski
2016-01-19 13:36 ` [tip:x86/asm] x86/asm/entry: Remove unused SAVE_ALL/ RESTORE_ALL " tip-bot for Alexander Kuleshov
0 siblings, 2 replies; 3+ messages in thread
From: Alexander Kuleshov @ 2016-01-18 14:13 UTC (permalink / raw)
To: Thomas Gleixner
Cc: Ingo Molnar, H . Peter Anvin, x86, Andy Lutomirski,
Denys Vlasenko, Borislav Petkov, linux-kernel,
Alexander Kuleshov
SAVE_ALL and RESTORE_ALL macros for !CONFIG_X86_64 were introduced in the
1a338ac32 commit (sched, x86: Optimize the preempt_schedule() call) and
were used in the ___preempt_schedule and ___preempt_schedule_context from
the arch/x86/kernel/preempt.S. But the arch/x86/kernel/preempt.S was
removed in the 0ad6e3c5 commit (x86: Speed up ___preempt_schedule*() by
using THUNK helpers). The ___preempt_schedule/___preempt_schedule_context
were reimplemeted and not used SAVE_ALL/RESTORE_ALL anymore.
These macros have no users anymore, so we can remove them.
Signed-off-by: Alexander Kuleshov <kuleshovmail@gmail.com>
---
arch/x86/entry/calling.h | 31 -------------------------------
1 file changed, 31 deletions(-)
diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index e32206e..9a9e588 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -201,37 +201,6 @@ For 32-bit we have the following conventions - kernel is built with
.byte 0xf1
.endm
-#else /* CONFIG_X86_64 */
-
-/*
- * For 32bit only simplified versions of SAVE_ALL/RESTORE_ALL. These
- * are different from the entry_32.S versions in not changing the segment
- * registers. So only suitable for in kernel use, not when transitioning
- * from or to user space. The resulting stack frame is not a standard
- * pt_regs frame. The main use case is calling C code from assembler
- * when all the registers need to be preserved.
- */
-
- .macro SAVE_ALL
- pushl %eax
- pushl %ebp
- pushl %edi
- pushl %esi
- pushl %edx
- pushl %ecx
- pushl %ebx
- .endm
-
- .macro RESTORE_ALL
- popl %ebx
- popl %ecx
- popl %edx
- popl %esi
- popl %edi
- popl %ebp
- popl %eax
- .endm
-
#endif /* CONFIG_X86_64 */
/*
--
2.7.0.25.gfc10eb5
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] x86/calling.h: remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64
2016-01-18 14:13 [PATCH] x86/calling.h: remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64 Alexander Kuleshov
@ 2016-01-18 17:50 ` Andy Lutomirski
2016-01-19 13:36 ` [tip:x86/asm] x86/asm/entry: Remove unused SAVE_ALL/ RESTORE_ALL " tip-bot for Alexander Kuleshov
1 sibling, 0 replies; 3+ messages in thread
From: Andy Lutomirski @ 2016-01-18 17:50 UTC (permalink / raw)
To: Alexander Kuleshov
Cc: Thomas Gleixner, Ingo Molnar, H . Peter Anvin, X86 ML,
Andy Lutomirski, Denys Vlasenko, Borislav Petkov, linux-kernel
On Mon, Jan 18, 2016 at 6:13 AM, Alexander Kuleshov
<kuleshovmail@gmail.com> wrote:
> SAVE_ALL and RESTORE_ALL macros for !CONFIG_X86_64 were introduced in the
> 1a338ac32 commit (sched, x86: Optimize the preempt_schedule() call) and
> were used in the ___preempt_schedule and ___preempt_schedule_context from
> the arch/x86/kernel/preempt.S. But the arch/x86/kernel/preempt.S was
> removed in the 0ad6e3c5 commit (x86: Speed up ___preempt_schedule*() by
> using THUNK helpers). The ___preempt_schedule/___preempt_schedule_context
> were reimplemeted and not used SAVE_ALL/RESTORE_ALL anymore.
>
> These macros have no users anymore, so we can remove them.
LGTM.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [tip:x86/asm] x86/asm/entry: Remove unused SAVE_ALL/ RESTORE_ALL macros for !CONFIG_x86_64
2016-01-18 14:13 [PATCH] x86/calling.h: remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64 Alexander Kuleshov
2016-01-18 17:50 ` Andy Lutomirski
@ 2016-01-19 13:36 ` tip-bot for Alexander Kuleshov
1 sibling, 0 replies; 3+ messages in thread
From: tip-bot for Alexander Kuleshov @ 2016-01-19 13:36 UTC (permalink / raw)
To: linux-tip-commits
Cc: linux-kernel, luto, peterz, kuleshovmail, torvalds, hpa, mingo,
luto, dvlasenk, bp, brgerst, tglx, bp
Commit-ID: 2024315124b43bb8b25a119ec6c614f0647dcc6d
Gitweb: http://git.kernel.org/tip/2024315124b43bb8b25a119ec6c614f0647dcc6d
Author: Alexander Kuleshov <kuleshovmail@gmail.com>
AuthorDate: Mon, 18 Jan 2016 20:13:14 +0600
Committer: Ingo Molnar <mingo@kernel.org>
CommitDate: Tue, 19 Jan 2016 08:24:03 +0100
x86/asm/entry: Remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64
SAVE_ALL and RESTORE_ALL macros for !CONFIG_X86_64 were
introduced in commit:
1a338ac32 commit ('sched, x86: Optimize the preempt_schedule() call')
... and were used in the ___preempt_schedule() and ___preempt_schedule_context()
functions from the arch/x86/kernel/preempt.S.
But the arch/x86/kernel/preempt.S file was removed in the following commit:
0ad6e3c5 commit ('x86: Speed up ___preempt_schedule*() by using THUNK helpers')
The ___preempt_schedule()/___preempt_schedule_context() functions were
reimplemeted and do not use SAVE_ALL/RESTORE_ALL anymore.
These macros have no users anymore, so we can remove them.
Signed-off-by: Alexander Kuleshov <kuleshovmail@gmail.com>
Acked-by: Andy Lutomirski <luto@amacapital.net>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Borislav Petkov <bp@suse.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1453126394-13717-1-git-send-email-kuleshovmail@gmail.com
[ Improved the changelog. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
arch/x86/entry/calling.h | 31 -------------------------------
1 file changed, 31 deletions(-)
diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index e32206e..9a9e588 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -201,37 +201,6 @@ For 32-bit we have the following conventions - kernel is built with
.byte 0xf1
.endm
-#else /* CONFIG_X86_64 */
-
-/*
- * For 32bit only simplified versions of SAVE_ALL/RESTORE_ALL. These
- * are different from the entry_32.S versions in not changing the segment
- * registers. So only suitable for in kernel use, not when transitioning
- * from or to user space. The resulting stack frame is not a standard
- * pt_regs frame. The main use case is calling C code from assembler
- * when all the registers need to be preserved.
- */
-
- .macro SAVE_ALL
- pushl %eax
- pushl %ebp
- pushl %edi
- pushl %esi
- pushl %edx
- pushl %ecx
- pushl %ebx
- .endm
-
- .macro RESTORE_ALL
- popl %ebx
- popl %ecx
- popl %edx
- popl %esi
- popl %edi
- popl %ebp
- popl %eax
- .endm
-
#endif /* CONFIG_X86_64 */
/*
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-01-19 13:38 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-18 14:13 [PATCH] x86/calling.h: remove unused SAVE_ALL/RESTORE_ALL macros for !CONFIG_x86_64 Alexander Kuleshov
2016-01-18 17:50 ` Andy Lutomirski
2016-01-19 13:36 ` [tip:x86/asm] x86/asm/entry: Remove unused SAVE_ALL/ RESTORE_ALL " tip-bot for Alexander Kuleshov
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