lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 30 Nov 2017 22:29:40 -0800
From:   Andy Lutomirski <luto@...nel.org>
To:     x86@...nel.org
Cc:     linux-kernel@...r.kernel.org, Borislav Petkov <bp@...en8.de>,
        Brian Gerst <brgerst@...il.com>,
        David Laight <David.Laight@...lab.com>,
        Kees Cook <keescook@...omium.org>,
        Peter Zijlstra <peterz@...radead.org>,
        Andy Lutomirski <luto@...nel.org>
Subject: [PATCH 0/6] WIP.x86/mm fixes

This is a bit oddly formatted, since it's meant to by a set of changes
to a tree, not a normal patch set.

"x86/orc: Don't bail on stack overflow" is a fixed version of
"x86/unwinder/orc: Don't bail on stack overflow".  If you'd rather
just manually patch it, change "regs->sp" to "state->sp".  Bug noticed
by Dan Carpenter.

Patch 2 is a bugfix that prevents a potential KVM explosion.  The
original patch failed to update KVM.  Thanks, KVM, for having a
separate copy of everything related to CPU state.

Patch 3 is another bugfix that prevents a potential KVM explosion
once the rest of KAISER is patched in.  (I haven't tested, but I imagine
we'd blow up horribly on the first interrupt from user mode after a
VM exit.)

Patch 4 fixes a *huge* performance regression.  Well, not as huge as
KAISER, but still huge.  It turns out that pushq; retq is very, very
slow.

Patch 5 fixes a potential bug.  Thomas, I think you said you had a fix
on top of this fix.  If you want my help, let me know.

Patch 6 is new.  It makes the TSS remap RO on 64-bit kernels.

Andy Lutomirski (6):
  x86/orc: Don't bail on stack overflow
  Fixup "x86/asm: Fix assumptions that the HW TSS is at the beginning of
    cpu_tss"
  Fixup "x86/asm: Remap the TSS into the cpu entry area"
  Unsuck "x86/entry/64: Create a percpu SYSCALL entry trampoline"
  Fixup "x86/entry/64: Move the IST stacks into cpu_entry_area"
  x86/entry/64: Make cpu_entry_area.tss read-only

 arch/x86/entry/entry_32.S          |  4 ++--
 arch/x86/entry/entry_64.S          | 24 +++++++++++++------
 arch/x86/include/asm/fixmap.h      | 15 ++++++++----
 arch/x86/include/asm/processor.h   | 17 +++++++------
 arch/x86/include/asm/switch_to.h   |  4 ++--
 arch/x86/include/asm/thread_info.h |  2 +-
 arch/x86/kernel/asm-offsets.c      |  6 ++---
 arch/x86/kernel/asm-offsets_32.c   |  4 ++--
 arch/x86/kernel/cpu/common.c       | 49 +++++++++++++++++++++++++++-----------
 arch/x86/kernel/ioport.c           |  2 +-
 arch/x86/kernel/process.c          |  6 ++---
 arch/x86/kernel/process_32.c       |  2 +-
 arch/x86/kernel/process_64.c       |  2 +-
 arch/x86/kernel/traps.c            | 10 ++++++--
 arch/x86/kernel/unwind_orc.c       | 14 +++++++++--
 arch/x86/kvm/vmx.c                 |  2 +-
 arch/x86/lib/delay.c               |  4 ++--
 arch/x86/xen/enlighten_pv.c        |  2 +-
 18 files changed, 110 insertions(+), 59 deletions(-)

-- 
2.13.6

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ