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

Palmer Dabbelt palmer at dabbelt.com
Thu Feb 15 16:56:08 PST 2024


On Wed, 31 Jan 2024 06:49:32 PST (-0800), parri.andrea at gmail.com wrote:
> 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@gmail.com/
> [2] https://lore.kernel.org/lkml/20231211094414.8078-1-parri.andrea@gmail.com/
> [3] https://lore.kernel.org/lkml/20231127103235.28442-1-parri.andrea@gmail.com/
> [4] https://lore.kernel.org/lkml/20230803040111.5101-1-parri.andrea@gmail.com/
>
> 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

I picked these up into my staging tree for the tester this morning, 
there's a few hiccups from my latest master merge but they don't seem 
super exciting.  So it might take a bit for these to show up in my 
for-next, but they're headed in that direction.

LMK if you guys were aiming for some other tree, or want to do some sort 
of shared tag for them.  Otherwise they'll show up in linux-next soon.

Thanks!



More information about the linux-riscv mailing list