[pypy-commit] stmgc c8-small-uniform: add test showing a bug in stm_validate()
Raemi
noreply at buildbot.pypy.org
Wed Dec 3 08:31:13 CET 2014
Author: Remi Meier <remi.meier at gmail.com>
Branch: c8-small-uniform
Changeset: r1511:c849b169bc4e
Date: 2014-12-02 15:56 +0100
http://bitbucket.org/pypy/stmgc/changeset/c849b169bc4e/
Log: add test showing a bug in stm_validate()
diff --git a/c8/stm/gcpage.c b/c8/stm/gcpage.c
--- a/c8/stm/gcpage.c
+++ b/c8/stm/gcpage.c
@@ -5,7 +5,6 @@
static void setup_gcpage(void)
{
- /* XXXXXXX should use stm_file_pages, no? */
uninitialized_page_start = stm_file_pages;
uninitialized_page_stop = stm_file_pages + NB_SHARED_PAGES * 4096UL;
}
diff --git a/c8/test/test_basic.py b/c8/test/test_basic.py
--- a/c8/test/test_basic.py
+++ b/c8/test/test_basic.py
@@ -811,6 +811,33 @@
assert stm_get_char(lp_char_5, 384 - 1) == 'o'
+ def test_bug3(self):
+ lp_char_5 = stm_allocate_old(384)
+
+ for i in range(NB_SEGMENTS):
+ self.start_transaction()
+ stm_set_char(lp_char_5, '\0', HDR, False)
+ self.commit_transaction()
+
+ #
+ self.switch(2)
+ self.start_transaction()
+ stm_set_char(lp_char_5, 'i', HDR, False)
+ self.commit_transaction()
+
+ self.start_transaction()
+ stm_set_char(lp_char_5, 'x', HDR, False)
+
+ self.switch(1)
+ self.start_transaction()
+ stm_set_char(lp_char_5, 'a', HDR, False)
+ self.commit_transaction()
+
+ self.switch(0)
+ self.start_transaction()
+ assert stm_get_char(lp_char_5, HDR) == 'a'
+
+
def test_repeated_wb(self):
lp_char_5 = stm_allocate_old(384)
More information about the pypy-commit
mailing list