kaiser: fix regs to do_nmi() ifndef CONFIG_KAISER
authorHugh Dickins <hughd@google.com>
Fri, 22 Sep 2017 03:39:56 +0000 (20:39 -0700)
committerYves-Alexis Perez <corsac@debian.org>
Thu, 4 Jan 2018 11:12:40 +0000 (11:12 +0000)
commit0fcf765837fb4c4ab508a3487249584a701a5e74
tree2da1b75ec3528c06816540226cb48e1975225233
parentd8cfb079b21452a882ab4de2f16a5e58675887b7
kaiser: fix regs to do_nmi() ifndef CONFIG_KAISER

pjt has observed that nmi's second (nmi_from_kernel) call to do_nmi()
adjusted the %rdi regs arg, rightly when CONFIG_KAISER, but wrongly
when not CONFIG_KAISER.

Although the minimal change is to add an #ifdef CONFIG_KAISER around
the addq line, that looks cluttered, and I prefer how the first call
to do_nmi() handled it: prepare args in %rdi and %rsi before getting
into the CONFIG_KAISER block, since it does not touch them at all.

And while we're here, place the "#ifdef CONFIG_KAISER" that follows
each, to enclose the "Unconditionally restore CR3" comment: matching
how the "Unconditionally use kernel CR3" comment above is enclosed.

Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Gbp-Pq: Topic features/all/kpti
Gbp-Pq: Name kaiser-fix-regs-to-do_nmi-ifndef-config_kaiser.patch
arch/x86/entry/entry_64.S