[RFC v2 1/4] Documentation/locking/atomic: Fix atomic-set litmus test

From: Boqun Feng
Date: Wed Feb 19 2020 - 01:26:47 EST

Currently the litmus test "atomic-set" in atomic_t.txt has a few things
to be improved:

1) The CPU/Processor numbers "P1,P2" are not only inconsistent with
the rest of the document, which uses "CPU0" and "CPU1", but also
unacceptable by the herd tool, which requires processors start
at "P0".

2) The initialization block uses a "atomic_set()", which is OK, but
it's better to use ATOMIC_INIT() to make clear this is an

3) The return value of atomic_add_unless() is discarded
inexplicitly, which is OK for C language, but it will be helpful
to the herd tool if we use a void cast to make the discard

Therefore fix these and this is the preparation for adding the litmus
test into memory-model litmus-tests directory so that people can
understand better about our requirements of atomic APIs and klitmus tool
can be used to generate tests.

Signed-off-by: Boqun Feng <boqun.feng@xxxxxxxxx>
Documentation/atomic_t.txt | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/Documentation/atomic_t.txt b/Documentation/atomic_t.txt
index 0ab747e0d5ac..ceb85ada378e 100644
--- a/Documentation/atomic_t.txt
+++ b/Documentation/atomic_t.txt
@@ -91,15 +91,15 @@ ops. That is:
C atomic-set

- atomic_set(v, 1);
+ atomic_t v = ATOMIC_INIT(1);

- P1(atomic_t *v)
+ P0(atomic_t *v)
- atomic_add_unless(v, 1, 0);
+ (void)atomic_add_unless(v, 1, 0);

- P2(atomic_t *v)
+ P1(atomic_t *v)
atomic_set(v, 0);