lkml.org 
[lkml]   [2018]   [Jun]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/5] add support for relative references in jump tables
    Date
    This series implements support for emitting the data structures associated
    with jump tables as 32-bit relative references instead of absolute
    references, which take up more space on builds that target 64-bit
    architectures, or implement self relocation [or both].

    This series enables it for arm64 and x86, although other architectures
    might benefit as well.

    Patch #1 does some preparatory refactoring before patch #2 introduces the
    generic pieces required for using relative references.

    Patch #3 wires everything up for arm64.

    For x86, patch #4 applies some preparatory changes for the arch specific
    jump label C code, which is a lot more involved than on arm64, which is
    why it is split off in this case. Patch #5 wires it up for x86 as well.

    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Arnd Bergmann <arnd@arndb.de>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Cc: Peter Zijlstra <peterz@infradead.org>

    Ard Biesheuvel (5):
    kernel/jump_label: abstract jump_entry member accessors
    kernel/jump_label: implement generic support for relative references
    arm64/kernel: jump_label: switch to relative references
    x86: jump_label: switch to jump_entry accessors
    x86/kernel: jump_table: use relative references

    arch/Kconfig | 3 +
    arch/arm64/Kconfig | 1 +
    arch/arm64/include/asm/jump_label.h | 16 ++---
    arch/arm64/kernel/jump_label.c | 6 +-
    arch/x86/Kconfig | 1 +
    arch/x86/include/asm/jump_label.h | 28 +++------
    arch/x86/kernel/jump_label.c | 43 +++++++------
    include/linux/jump_label.h | 64 ++++++++++++++++++++
    kernel/jump_label.c | 56 ++++++++++-------
    tools/objtool/special.c | 4 +-
    10 files changed, 145 insertions(+), 77 deletions(-)

    --
    2.11.0

    \
     
     \ /
      Last update: 2018-06-27 18:06    [W:3.049 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site