[PATCH v4 0/4] membarrier: riscv: Core serializing command

From: Andrea Parri
Date: Wed Jan 31 2024 - 09:50:39 EST


Changes since v3 ([1]):
- amend documentation

Changes since v2 ([2]):
- amend inline comments
- drop ARCH_HAS_MEMBARRIER, create membarrrier.rst

Changes since v1 ([3]):
- add smp_mb() in switch_mm()
- introduce ARCH_HAS_MEMBARRIER, amend documentation

Changes since RFC ([4]):
- introduce prepare_sync_core_cmd()
- fix nosmp builds

[1] https://lore.kernel.org/lkml/20240110145533.60234-1-parri.andrea@xxxxxxxxx/
[2] https://lore.kernel.org/lkml/20231211094414.8078-1-parri.andrea@xxxxxxxxx/
[3] https://lore.kernel.org/lkml/20231127103235.28442-1-parri.andrea@xxxxxxxxx/
[4] https://lore.kernel.org/lkml/20230803040111.5101-1-parri.andrea@xxxxxxxxx/

Andrea Parri (4):
membarrier: riscv: Add full memory barrier in switch_mm()
membarrier: Create Documentation/scheduler/membarrier.rst
locking: Introduce prepare_sync_core_cmd()
membarrier: riscv: Provide core serializing command

.../membarrier-sync-core/arch-support.txt | 18 ++++++-
Documentation/scheduler/index.rst | 1 +
Documentation/scheduler/membarrier.rst | 39 +++++++++++++++
MAINTAINERS | 4 +-
arch/riscv/Kconfig | 4 ++
arch/riscv/include/asm/membarrier.h | 50 +++++++++++++++++++
arch/riscv/include/asm/sync_core.h | 29 +++++++++++
arch/riscv/mm/context.c | 2 +
include/linux/sync_core.h | 16 +++++-
init/Kconfig | 3 ++
kernel/sched/core.c | 16 ++++--
kernel/sched/membarrier.c | 13 +++--
12 files changed, 185 insertions(+), 10 deletions(-)
create mode 100644 Documentation/scheduler/membarrier.rst
create mode 100644 arch/riscv/include/asm/membarrier.h
create mode 100644 arch/riscv/include/asm/sync_core.h

--
2.34.1