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  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:   Mon, 27 Nov 2017 00:14:03 +0100
From:   Thomas Gleixner <>
To:     LKML <>
Cc:     Dave Hansen <>,
        Andy Lutomirski <>,
        Ingo Molnar <>, Borislav Petkov <>,
        Brian Gerst <>,
        Denys Vlasenko <>,
        "H. Peter Anvin" <>,
        Josh Poimboeuf <>,
        Linus Torvalds <>,
        Peter Zijlstra <>,
        Rik van Riel <>,,,,,,,
Subject: [patch V2 0/5] x86/kaiser: Boot time disabling and debug support

This patch series applies on top of

     git:// WIP.x86/mm

It contains the following updates:

  - Don't set NX/PAGE_GLOBAL unconditionally

  - Get rid of the compile time PAGE_GLOBAL disabling

  - Add debug support for WX mappings in the KAISER shadow table

  - Provide debug files to dump the kernel and the user page table for the
    current task.

  - Add a boot time switch to disable KAISER. This does not yet take care of
    the 8k PGD allocations, but that can be done on top.

Changes vs. V1:

  - Prevent setting PAGE_GLOBAL/NX when not supported or disabled

  - Restructured the debug stuff a bit

  - Extended the boot time disable to debug stuff

I tried to reenable paravirt by disabling kaiser at boot time when XEN_PV
is detected. XEN_PV is the only one having CR3 access paravirtualized,
which will explode nicely in the enter/exit code.

But enabling KAISER has some weird not yet debugged side effects even on
KVM guests. Will look at that tomorrow morning.



 arch/x86/entry/calling.h             |    7 +++
 arch/x86/include/asm/kaiser.h        |   10 ++++
 arch/x86/include/asm/pgtable.h       |    1 
 arch/x86/include/asm/pgtable_64.h    |    9 +++
 arch/x86/include/asm/pgtable_types.h |   16 ------
 arch/x86/mm/debug_pagetables.c       |   81 ++++++++++++++++++++++++++++++++---
 arch/x86/mm/dump_pagetables.c        |   32 +++++++++++--
 arch/x86/mm/init.c                   |   14 ++++--
 arch/x86/mm/kaiser.c                 |   42 +++++++++++++++++-
 arch/x86/mm/pageattr.c               |   16 +++---
 security/Kconfig                     |    2 
 11 files changed, 190 insertions(+), 40 deletions(-)

Powered by blists - more mailing lists