Hi Ingo, Hi Peter, Here are the membarrier patch series I would like to submit for the 4.16 merge window. It would be appreciated of those can go through the scheduler tree. It's the same series as last week, rebased on top of 4.15-rc8. Highlights: "powerpc: membarrier: Skip memory barrier in switch_mm()" takes care of a TODO that was left in the private expedited implementation when merged in 4.14: an extra memory barrier was added on context switch on powerpc. Ensure that the barrier is only performed when scheduling between different processes, only for threads belonging to processes that have registered their intent to use the private expedited command. "membarrier: provide SHARED_EXPEDITED command" adds new commands to membarrier for registration and use of membarrier across shared memory mappings. The non-expedited command has proven to be really too slow (taking 10ms and more to complete) for real-world use. The expedited version completes in a matter of microseconds. "membarrier: Provide core serializing command" provides core serialization for JIT reclaim. We received positive feedback from Android developers that the proposed ABI fits their use-case. Only x86 32/64 and arm 64 implement this command so far. This is opt-in per architecture. The other patches add selftests and documentation. Thanks, Mathieu Mathieu Desnoyers (10): membarrier: selftest: Test private expedited cmd (v2) powerpc: membarrier: Skip memory barrier in switch_mm() (v7) membarrier: Document scheduler barrier requirements (v5) membarrier: provide SHARED_EXPEDITED command (v2) membarrier: selftest: Test shared expedited cmd membarrier: Provide core serializing command x86: Introduce sync_core_before_usermode (v2) membarrier: x86: Provide core serializing command (v3) membarrier: arm64: Provide core serializing command membarrier: selftest: Test private expedited sync core cmd MAINTAINERS | 1 + arch/arm64/Kconfig | 1 + arch/arm64/kernel/entry.S | 4 + arch/powerpc/Kconfig | 1 + arch/powerpc/include/asm/membarrier.h | 27 +++ arch/powerpc/mm/mmu_context.c | 7 + arch/x86/Kconfig | 2 + arch/x86/entry/entry_32.S | 5 + arch/x86/entry/entry_64.S | 4 + arch/x86/include/asm/processor.h | 10 + arch/x86/mm/tlb.c | 6 + include/linux/processor.h | 6 + include/linux/sched/mm.h | 40 +++- include/uapi/linux/membarrier.h | 66 +++++- init/Kconfig | 9 + kernel/sched/core.c | 53 +++-- kernel/sched/membarrier.c | 171 +++++++++++++-- .../testing/selftests/membarrier/membarrier_test.c | 235 +++++++++++++++++++-- 18 files changed, 585 insertions(+), 63 deletions(-) create mode 100644 arch/powerpc/include/asm/membarrier.h -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html