Re: [PATCH] tools/memory-model: document the "one-time init" pattern
From: Sedat Dilek
Date: Fri Jul 17 2020 - 01:49:26 EST
On Fri, Jul 17, 2020 at 6:48 AM Eric Biggers <ebiggers@xxxxxxxxxx> wrote:
>
> From: Eric Biggers <ebiggers@xxxxxxxxxx>
...
> This is motivated by the discussion at
> https://lkml.kernel.org/linux-fsdevel/20200713033330.205104-1-ebiggers@xxxxxxxxxx/T/#u
...
> +In where cases where taking the mutex in the "already initialized" case
"In cases where..." (drop first "where")
> +presents scalability concerns, the implementation can be optimized to
> +check the 'inited' flag outside the mutex. Unfortunately, this
> +optimization is often implemented incorrectly by using a plain load.
> +That violates the memory model and may result in unpredictable behavior.
- Sedat -