From 7f9eb951a3ee0443169dd21ddc914df4a04c9aab Mon Sep 17 00:00:00 2001
From: Brian Norris <banorris@uci.edu>
Date: Fri, 19 Oct 2012 15:27:37 -0700
Subject: [PATCH] model: fix - RMW cannot break release sequences

I misinterpreted the spec's description of release sequences.
---
 model.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/model.cc b/model.cc
index 2aaa1c2..134e457 100644
--- a/model.cc
+++ b/model.cc
@@ -1509,8 +1509,8 @@ bool ModelChecker::release_seq_heads(const ModelAction *rf,
 				continue;
 			}
 
-			/* Only writes can break release sequences */
-			if (!act->is_write())
+			/* Only non-RMW writes can break release sequences */
+			if (!act->is_write() || act->is_rmw())
 				continue;
 
 			/* Check modification order */
-- 
2.34.1