Re: [PATCH v1] locking/memory-barriers.txt: Improve documentation for writel() usage

From: Akira Yokosawa
Date: Thu Sep 29 2022 - 23:12:09 EST


Hi,

On Fri, 30 Sep 2022 05:03:55 +0300, Parav Pandit wrote:
> The cited commit describes that when using writel(), explcit wmb()
> is not needed. wmb() is an expensive barrier. writel() uses the needed
> I/O barrier instead of expensive wmb().
>
> Hence update the example to be more accurate that matches the current
> implementation.
>
> commit 5846581e3563 ("locking/memory-barriers.txt: Fix broken DMA vs. MMIO ordering example")
> Signed-off-by: Parav Pandit <parav@xxxxxxxxxx>
>
> ---
> changelog:
> v0->v1:
> - Corrected to mention I/O barrier instead of dma_wmb().
I don't think dma_wmb() and wmb() belong to "I/O barrier" as far as
memory-barriers.txt is concerned. They are listed in the "CPU MEMORY
BARRIERS" section. dma_wmb() belongs to "advanced barrier functions".

You see, writel() is one of the functions listed in the "KERNEL I/O
BARRIER EFFECTS" section.

Please be consistent with the word choice of the doc you are modifying,
so that any further confusion can be avoided in this infamously
hard-to-follow document. :-)

Regards,
Akira

> - removed numbered references in commit log
> - corrected typo 'explcit' to 'explicit' in commit log
> ---
> Documentation/memory-barriers.txt | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
[...]