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:   Tue, 25 Feb 2020 23:16:06 +0100
From:   Thomas Gleixner <tglx@...utronix.de>
To:     LKML <linux-kernel@...r.kernel.org>
Cc:     x86@...nel.org, Steven Rostedt <rostedt@...dmis.org>,
        Brian Gerst <brgerst@...il.com>,
        Juergen Gross <jgross@...e.com>,
        Paolo Bonzini <pbonzini@...hat.com>,
        Arnd Bergmann <arnd@...db.de>
Subject: [patch 00/24] x86/entry: Consolidation - Part III

Hi!

This is the third batch of a 73 patches series which consolidates the x86
entry code. The larger explanation is in the part I cover letter:

 https://lore.kernel.org/r/20200225213636.689276920@linutronix.de

I applies on top of part II which can be found here:

 https://lore.kernel.org/r/20200225220801.571835584@linutronix.de

This part consolidates the entry stub ASM code generation by:

  - Distangling the unreadable idtentry maze on 64bit

  - Providing idtentry for 32bit

  - Providing exception entry point macros which

     - Declare the required ASM, C and XEN/PV prototypes

     - Hide the underlying C-entry magic in the macros which are used for
       wrapping the actual C handler. This includes marking them notrace
       and exclude them from kprobes so in a later step irq flags tracing
       and enter from user space handling can be moved out from ASM into C
       into one central place

     - Have one header file (idtentry.h) which provides all the macros and
       also acts as a collection point for all idtentries which need to be
       emitted as ASM stubs.

  - Converting the trivial exceptions over to the new scheme

This is the first step to get rid of the pointless differences between 32
bit and 64 bit (arch_entry.h vs. random defines in entry_64.S) and having
consistent prototypes and exception C-handler mechanics all over the place
instead of a randomly chosen implementation here and there.

This applies on top of part two which is available here:

   git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git entry-v1-part2

To get part 1 - 3 pull from here:

   git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git entry-v1-part3

Thanks,

	tglx

8<---------------
 entry/entry_32.S       |  167 ++++++-------------
 entry/entry_64.S       |  410 ++++++++++++++++++++++++++-----------------------
 include/asm/idtentry.h |  150 +++++++++++++++++
 include/asm/trapnr.h   |   31 +++
 include/asm/traps.h    |   74 --------
 kernel/idt.c           |   30 +--
 kernel/traps.c         |  129 +++++++++------
 xen/enlighten_pv.c     |   35 ++--
 xen/xen-asm_32.S       |    2 
 xen/xen-asm_64.S       |   30 +--
 10 files changed, 584 insertions(+), 474 deletions(-)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ