OSDN Git Service

x86/entry: Move PUSH_AND_CLEAR_REGS() back into error_entry
authorPeter Zijlstra <peterz@infradead.org>
Wed, 6 Jul 2022 13:33:30 +0000 (15:33 +0200)
committerBorislav Petkov <bp@suse.de>
Thu, 7 Jul 2022 11:39:42 +0000 (13:39 +0200)
commit2c08b9b38f5b0f4a6c2d29be22b695e4ec4a556b
treea5e04eec0a7b50de5c307b585a4579275ee69317
parentf54d45372c6ac9c993451de5e51312485f7d10bc
x86/entry: Move PUSH_AND_CLEAR_REGS() back into error_entry

Commit

  ee774dac0da1 ("x86/entry: Move PUSH_AND_CLEAR_REGS out of error_entry()")

moved PUSH_AND_CLEAR_REGS out of error_entry, into its own function, in
part to avoid calling error_entry() for XenPV.

However, commit

  7c81c0c9210c ("x86/entry: Avoid very early RET")

had to change that because the 'ret' was too early and moved it into
idtentry, bloating the text size, since idtentry is expanded for every
exception vector.

However, with the advent of xen_error_entry() in commit

  d147553b64bad ("x86/xen: Add UNTRAIN_RET")

it became possible to remove PUSH_AND_CLEAR_REGS from idtentry, back
into *error_entry().

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
arch/x86/entry/entry_64.S