* [PATCH] memorder: Use consistent names of WRC litmus tests
@ 2017-09-19 22:17 Akira Yokosawa
2017-09-19 22:44 ` Paul E. McKenney
0 siblings, 1 reply; 2+ messages in thread
From: Akira Yokosawa @ 2017-09-19 22:17 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa
From 6c728887ced50a760683df02da552a069dd51ead Mon Sep 17 00:00:00 2001
From: Akira Yokosawa <akiyks@gmail.com>
Date: Wed, 20 Sep 2017 07:05:32 +0900
Subject: [PATCH] memorder: Use consistent names of WRC litmus tests
Also update path names of litmus tests.
Fixes: 3162ff468ef4 ("memorder: Substitute WRC for WWC to illustrate non-MCA")
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
.../advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus | 33 ++++++++++++++++++++++
CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus | 2 +-
.../advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus | 33 ----------------------
memorder/memorder.tex | 8 +++---
4 files changed, 38 insertions(+), 38 deletions(-)
create mode 100644 CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus
delete mode 100644 CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus
diff --git a/CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus b/CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus
new file mode 100644
index 0000000..602e800
--- /dev/null
+++ b/CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus
@@ -0,0 +1,33 @@
+C C-WRC+o+o-data-o+o-rmb-o
+
+{
+}
+
+{
+#include "api.h"
+}
+
+P0(int *x)
+{
+ WRITE_ONCE(*x, 1);
+}
+
+P1(int *x, int* y)
+{
+ int r1;
+
+ r1 = READ_ONCE(*x);
+ WRITE_ONCE(*y, r1);
+}
+
+P2(int *x, int* y)
+{
+ int r2;
+ int r3;
+
+ r2 = READ_ONCE(*y);
+ smp_rmb();
+ r3 = READ_ONCE(*x);
+}
+
+exists (1:r1=1 /\ 2:r2=1 /\ 2:r3=0)
diff --git a/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus b/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus
index 5585f5e..6d55ead 100644
--- a/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus
+++ b/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus
@@ -1,4 +1,4 @@
-C C-WRC+o+o-r+a-o.litmus
+C C-WRC+o+o-r+a-o
{
}
diff --git a/CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus b/CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus
deleted file mode 100644
index 5d9f200..0000000
--- a/CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus
+++ /dev/null
@@ -1,33 +0,0 @@
-C C-WRC-o+o-data-o+o-rmb-o
-
-{
-}
-
-{
-#include "api.h"
-}
-
-P0(int *x)
-{
- WRITE_ONCE(*x, 1);
-}
-
-P1(int *x, int* y)
-{
- int r1;
-
- r1 = READ_ONCE(*x);
- WRITE_ONCE(*y, r1);
-}
-
-P2(int *x, int* y)
-{
- int r2;
- int r3;
-
- r2 = READ_ONCE(*y);
- smp_rmb();
- r3 = READ_ONCE(*x);
-}
-
-exists (1:r1=1 /\ 2:r2=1 /\ 2:r3=0)
diff --git a/memorder/memorder.tex b/memorder/memorder.tex
index 5df5649..316bab7 100644
--- a/memorder/memorder.tex
+++ b/memorder/memorder.tex
@@ -1847,7 +1847,7 @@ does need to deal with them.
\begin{listing}[tbp]
{ \scriptsize
\begin{verbbox}[\LstLineNo]
-C C-WRC-o+o-data-o+o-rmb-o
+C C-WRC+o+o-data-o+o-rmb-o
{
}
@@ -1885,7 +1885,7 @@ exists (1:r1=1 /\ 2:r2=1 /\ 2:r3=0)
\end{listing}
Listing~\ref{lst:memorder:WRC Litmus Test With Dependencies (No Ordering)}
-(\path{C-WWC+o+o-data-o+o-addr-o.litmus})
+(\path{C-WRC+o+o-data-o+o-rmb-o.litmus})
demonstrates multicopy atomicity, that is, on a multicopy-atomic platform,
the \co{exists} clause on line~29 cannot trigger.
In contrast, on a non-multicopy-atomic
@@ -2093,7 +2093,7 @@ same variable.
\begin{listing}[tbp]
{ \scriptsize
\begin{verbbox}[\LstLineNo]
-C C-WRC+o+o-r+a-o.litmus
+C C-WRC+o+o-r+a-o
{
}
@@ -2137,7 +2137,7 @@ However, as indicated by the ``C'' in their ``C'' column,
release operations do provide cumulativity.
Therefore,
Listing~\ref{lst:memorder:WRC Litmus Test With Release}
-(\path{C-WWC+o+o-r+o-addr-o.litmus})
+(\path{C-WRC+o+o-r+a-o.litmus})
substitutes a release operation for
Listing~\ref{lst:memorder:WRC Litmus Test With Dependencies (No Ordering)}'s
data dependency.
--
2.7.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] memorder: Use consistent names of WRC litmus tests
2017-09-19 22:17 [PATCH] memorder: Use consistent names of WRC litmus tests Akira Yokosawa
@ 2017-09-19 22:44 ` Paul E. McKenney
0 siblings, 0 replies; 2+ messages in thread
From: Paul E. McKenney @ 2017-09-19 22:44 UTC (permalink / raw)
To: Akira Yokosawa; +Cc: perfbook
On Wed, Sep 20, 2017 at 07:17:00AM +0900, Akira Yokosawa wrote:
> >From 6c728887ced50a760683df02da552a069dd51ead Mon Sep 17 00:00:00 2001
> From: Akira Yokosawa <akiyks@gmail.com>
> Date: Wed, 20 Sep 2017 07:05:32 +0900
> Subject: [PATCH] memorder: Use consistent names of WRC litmus tests
>
> Also update path names of litmus tests.
>
> Fixes: 3162ff468ef4 ("memorder: Substitute WRC for WWC to illustrate non-MCA")
> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Good eyes, applied and pushed, thank you!!!
Thanx, Paul
> ---
> .../advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus | 33 ++++++++++++++++++++++
> CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus | 2 +-
> .../advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus | 33 ----------------------
> memorder/memorder.tex | 8 +++---
> 4 files changed, 38 insertions(+), 38 deletions(-)
> create mode 100644 CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus
> delete mode 100644 CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus
>
> diff --git a/CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus b/CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus
> new file mode 100644
> index 0000000..602e800
> --- /dev/null
> +++ b/CodeSamples/advsync/herd/C-WRC+o+o-data-o+o-rmb-o.litmus
> @@ -0,0 +1,33 @@
> +C C-WRC+o+o-data-o+o-rmb-o
> +
> +{
> +}
> +
> +{
> +#include "api.h"
> +}
> +
> +P0(int *x)
> +{
> + WRITE_ONCE(*x, 1);
> +}
> +
> +P1(int *x, int* y)
> +{
> + int r1;
> +
> + r1 = READ_ONCE(*x);
> + WRITE_ONCE(*y, r1);
> +}
> +
> +P2(int *x, int* y)
> +{
> + int r2;
> + int r3;
> +
> + r2 = READ_ONCE(*y);
> + smp_rmb();
> + r3 = READ_ONCE(*x);
> +}
> +
> +exists (1:r1=1 /\ 2:r2=1 /\ 2:r3=0)
> diff --git a/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus b/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus
> index 5585f5e..6d55ead 100644
> --- a/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus
> +++ b/CodeSamples/advsync/herd/C-WRC+o+o-r+a-o.litmus
> @@ -1,4 +1,4 @@
> -C C-WRC+o+o-r+a-o.litmus
> +C C-WRC+o+o-r+a-o
>
> {
> }
> diff --git a/CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus b/CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus
> deleted file mode 100644
> index 5d9f200..0000000
> --- a/CodeSamples/advsync/herd/C-WRC-o+o-data-o+o-rmb-o.litmus
> +++ /dev/null
> @@ -1,33 +0,0 @@
> -C C-WRC-o+o-data-o+o-rmb-o
> -
> -{
> -}
> -
> -{
> -#include "api.h"
> -}
> -
> -P0(int *x)
> -{
> - WRITE_ONCE(*x, 1);
> -}
> -
> -P1(int *x, int* y)
> -{
> - int r1;
> -
> - r1 = READ_ONCE(*x);
> - WRITE_ONCE(*y, r1);
> -}
> -
> -P2(int *x, int* y)
> -{
> - int r2;
> - int r3;
> -
> - r2 = READ_ONCE(*y);
> - smp_rmb();
> - r3 = READ_ONCE(*x);
> -}
> -
> -exists (1:r1=1 /\ 2:r2=1 /\ 2:r3=0)
> diff --git a/memorder/memorder.tex b/memorder/memorder.tex
> index 5df5649..316bab7 100644
> --- a/memorder/memorder.tex
> +++ b/memorder/memorder.tex
> @@ -1847,7 +1847,7 @@ does need to deal with them.
> \begin{listing}[tbp]
> { \scriptsize
> \begin{verbbox}[\LstLineNo]
> -C C-WRC-o+o-data-o+o-rmb-o
> +C C-WRC+o+o-data-o+o-rmb-o
>
> {
> }
> @@ -1885,7 +1885,7 @@ exists (1:r1=1 /\ 2:r2=1 /\ 2:r3=0)
> \end{listing}
>
> Listing~\ref{lst:memorder:WRC Litmus Test With Dependencies (No Ordering)}
> -(\path{C-WWC+o+o-data-o+o-addr-o.litmus})
> +(\path{C-WRC+o+o-data-o+o-rmb-o.litmus})
> demonstrates multicopy atomicity, that is, on a multicopy-atomic platform,
> the \co{exists} clause on line~29 cannot trigger.
> In contrast, on a non-multicopy-atomic
> @@ -2093,7 +2093,7 @@ same variable.
> \begin{listing}[tbp]
> { \scriptsize
> \begin{verbbox}[\LstLineNo]
> -C C-WRC+o+o-r+a-o.litmus
> +C C-WRC+o+o-r+a-o
>
> {
> }
> @@ -2137,7 +2137,7 @@ However, as indicated by the ``C'' in their ``C'' column,
> release operations do provide cumulativity.
> Therefore,
> Listing~\ref{lst:memorder:WRC Litmus Test With Release}
> -(\path{C-WWC+o+o-r+o-addr-o.litmus})
> +(\path{C-WRC+o+o-r+a-o.litmus})
> substitutes a release operation for
> Listing~\ref{lst:memorder:WRC Litmus Test With Dependencies (No Ordering)}'s
> data dependency.
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-09-19 22:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-19 22:17 [PATCH] memorder: Use consistent names of WRC litmus tests Akira Yokosawa
2017-09-19 22:44 ` Paul E. McKenney
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.