Re: [RFC PATCH 0/5] RISC-V: Add dynamic TSO support

From: Conor Dooley
Date: Mon Nov 27 2023 - 05:37:57 EST


Hi,

On Fri, Nov 24, 2023 at 08:21:37AM +0100, Christoph Muellner wrote:
> From: Christoph Müllner <christoph.muellner@xxxxxxxx>
>
> The upcoming RISC-V Ssdtso specification introduces a bit in the senvcfg
> CSR to switch the memory consistency model at run-time from RVWMO to TSO
> (and back). The active consistency model can therefore be switched on a
> per-hart base and managed by the kernel on a per-process/thread base.
>
> This patch implements basic Ssdtso support and adds a prctl API on top
> so that user-space processes can switch to a stronger memory consistency
> model (than the kernel was written for) at run-time.
>
> I am not sure if other architectures support switching the memory
> consistency model at run-time, but designing the prctl API in an
> arch-independent way allows reusing it in the future.
>
> The patchset also comes with a short documentation of the prctl API.
>
> This series is based on the second draft of the Ssdtso specification
> which was published recently on an RVI list:
> https://lists.riscv.org/g/tech-arch-review/message/183
> Note, that the Ssdtso specification is in development state
> (i.e., not frozen or even ratified) which is also the reason
> why I marked the series as RFC.
>
> One aspect that is not covered in this patchset is virtualization.
> It is planned to add virtualization support in a later version.
> Hints/suggestions on how to implement this part are very much
> appreciated.
>
> Christoph Müllner (5):

I know this is an RFC, but it could probably do with a bit more compile
testing, as:

> RISC-V: Add basic Ssdtso support

This patch doesn't build for rv64 allmodconfig

> RISC-V: Expose Ssdtso via hwprobe API

This one seems to build fine

> uapi: prctl: Add new prctl call to set/get the memory consistency
> model
> RISC-V: Implement prctl call to set/get the memory consistency model
> RISC-V: selftests: Add DTSO tests

These don't build for:
rv32 defconfig
rv64 allmodconfig
rv64 nommu

Cheers,
Conor.

Attachment: signature.asc
Description: PGP signature