mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH V2 0/7] x86/entry: Clean up entry code
@ 2022-03-03  3:54 Lai Jiangshan
  2022-03-03  3:54 ` [PATCH V2 1/7] x86/traps: Move pt_regs only in fixup_bad_iret() Lai Jiangshan
                   ` (6 more replies)
  0 siblings, 7 replies; 12+ messages in thread
From: Lai Jiangshan @ 2022-03-03  3:54 UTC (permalink / raw)
  To: linux-kernel; +Cc: x86, Lai Jiangshan

From: Lai Jiangshan <jiangshan.ljs@antgroup.com>

This patchset moves the stack-switch code to the place where
error_entry() return, unravels error_entry() from XENpv and makes
entry_INT80_compat use idtentry macro.

This patchset is highly related to XENpv, because it does the extra
cleanup to convert SWAPGS to swapgs after major cleanup is done.

The patches are the version 2 of
https://lore.kernel.org/lkml/20211208110833.65366-1-jiangshanlai@gmail.com/
which are picked from the patchset
https://lore.kernel.org/lkml/20211126101209.8613-1-jiangshanlai@gmail.com/
which coverts ASM code to C code.  These patches are prepared for that
purpose.  But this patchset has it own value: it simplifies the stack
switch, avoids leaving the old stack inside a function call, and
separates XENpv code with native code without adding new code.

Changed from V1
	Squash cleanup patches converting SWAPGS to swapgs into one patch

	Use my official email address (Ant Group).  The work is backed
	by my company and I was incorrectly misunderstood that
	XXX@linux.alibaba.com is the only portal for opensource work
	in the corporate group.

PS:  I think the work is ready to be queued and I'm deeply sorry not to
resend it for more reviews for the last two months because I have been
obsessed with a boardgame and my brain power was drained.

Lai Jiangshan (7):
  x86/traps: Move pt_regs only in fixup_bad_iret()
  x86/entry: Switch the stack after error_entry() returns
  x86/entry: move PUSH_AND_CLEAR_REGS out of error_entry
  x86/entry: Move cld to the start of idtentry
  x86/entry: Don't call error_entry for XENPV
  x86/entry: Use idtentry macro for entry_INT80_compat
  x86/entry: Convert SWAPGS to swapgs and remove the definition of
    SWAPGS

 arch/x86/entry/entry_64.S        |  65 +++++++++++++------
 arch/x86/entry/entry_64_compat.S | 104 +------------------------------
 arch/x86/include/asm/idtentry.h  |  47 ++++++++++++++
 arch/x86/include/asm/irqflags.h  |   2 -
 arch/x86/include/asm/proto.h     |   4 --
 arch/x86/include/asm/traps.h     |   2 +-
 arch/x86/kernel/traps.c          |  17 ++---
 7 files changed, 102 insertions(+), 139 deletions(-)

-- 
2.19.1.6.gb485710b


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-03-07 14:54 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-03  3:54 [PATCH V2 0/7] x86/entry: Clean up entry code Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 1/7] x86/traps: Move pt_regs only in fixup_bad_iret() Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 2/7] x86/entry: Switch the stack after error_entry() returns Lai Jiangshan
2022-03-03  8:00   ` Peter Zijlstra
2022-03-07 14:39     ` Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 3/7] x86/entry: move PUSH_AND_CLEAR_REGS out of error_entry Lai Jiangshan
2022-03-03  8:54   ` Peter Zijlstra
2022-03-07 14:53     ` Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 4/7] x86/entry: Move cld to the start of idtentry Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 5/7] x86/entry: Don't call error_entry for XENPV Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 6/7] x86/entry: Use idtentry macro for entry_INT80_compat Lai Jiangshan
2022-03-03  3:54 ` [PATCH V2 7/7] x86/entry: Convert SWAPGS to swapgs and remove the definition of SWAPGS Lai Jiangshan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®