lkml.org 
[lkml]   [2020]   [May]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    Subject[patch V6 00/37] x86/entry: Rework leftovers and merge plan
    Folks!

    This is V6 of the rework series. V5 can be found here:

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

    The V6 leftover series is based on:

    git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git entry-base-v6

    which is the reworked base series from part 1-4 of the original 5 part
    series with a few changes which are described in detail below in the merge
    plan section.

    V6 has the following changes vs. V5:

    - Rebased on top entry-base-v6

    - Addressed Stevens request to split up the hardware latency detector.
    This are 3 patches now as I couldn't resist to cleanup the
    timestamping mess in that code before splitting it up.

    - Dropped the KVM/SVM change as that is going to be routed
    differently. See below.

    The full series is available from:

    git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git entry-v6-the-rest

    On top of that the kvm changes are applied for completeness and available
    from:

    git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git entry-v6-full


    Merge plan:
    -----------

    After figuring out that the entry pile and next are not really happy with
    each other, I spent quite some time to come up with a plan.

    The goal was to:

    - not let Stephen Rothwell grow more grey hair when trying to resolve
    the conflicts

    - allow the affected trees (RCU and KVM) to take a small part of the
    series into their trees while making sure that the x86/entry branch
    is complete and contains the required RCU and KVM changes as well.

    About 10 hours of patch tetris later the solution looks like this:

    I've reshuffled the patches so that they are grouped by subsystem instead
    of having the cross tree/subsystem patches close to the actual usage site
    in the x86/entry series.

    This allowed me to tag these subsytem parts and they contain just the
    minimal subset of changes to be able to build and boot.

    The resulting tag list is:

    - noinstr-lds-2020-05-15

    A single commit containing the vmlinux.lds.h change which introduces
    the noinstr.text section.

    - noinstr-core-2020-05-15

    Based on noinstr-lds-2020-05-15 and contains the core changes

    - noinstr-core-for-kvm-2020-05-15

    Subset of noinstr-core-2020-05-15 which is required to let KVM pull
    the KVM async pagefault cleanup and base the guest_enter/exit() and
    noinstr changes on top.

    - noinstr-rcu-nmi-2020-05-15

    Based on the core/rcu branch in the tip tree. It has merged in
    noinstr-lds-2020-05-15 and contains the nmi_enter/exit() changes along
    with the noinstr section changes on top.

    This tag is intended to be pulled by Paul into his rcu/next branch so
    he can sort the conflicts and base further work on top.

    - noinstr-core-2020-05-15

    Based on noinstr-core-for-kvm-2020-05-15 and contains the async page
    fault cleanup which goes into x86/entry so the IDTENTRY conversion of
    #PF which also touches the async pagefault code can be applied on top

    This tag is intended to be pulled by Paolo into his next branch so he
    can work against these changes and the merged result is also target for
    the rebased version of the KVM guest_enter/exit() changes. These are
    not part of the entry-v6-base tag. I'm going to post them as a separate
    series because the original ones are conflicting with work in that area
    in the KVM tree.

    - noinstr-kcsan-2020-05015, noinstr-kprobes-2020-05-15,
    noinstr-objtool-2020-05-15

    TIP tree internal tags which I added to reduce the brain-melt.

    The x86/entry branch is based on the TIP x86/entry branch and has the
    following branches and tags merged and patches from part 1-4 applied:

    - x86/asm because this has conflicting changes vs. #DF

    - A small set of preparatory changes and fixes which are independent
    of the noinstr mechanics

    - noinstr-objtool-2020-05-15
    - noinstr-core-2020-05-15
    - noinstr-kprobes-2020-05-15
    - noinstr-rcu-nmi-2020-05-15
    - noinstr-kcsan-2020-05015
    - noinstr-x86-kvm-2020-05-15

    - The part 1-4 patches up to

    51336ff8b658 ("x86/entry: Convert double fault exception to IDTENTRY_DF")

    This is tagged as entry-v6-base

    The remaining patches in this leftover series will be applied on top.

    If this works for all maintainers involved, then I'm going to pull the tags
    and branches into the tip-tree which makes them immutable.

    If not, please tell me ASAP that I should restart the patch tetris session
    after hiding in a brown paperbag for some time to recover from brain melt.

    Thanks,

    tglx


    \
     
     \ /
      Last update: 2020-05-16 02:11    [W:4.433 / U:0.144 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site