Author: Remi Meier <[email protected]>
Branch: c8-new-page-handling
Changeset: r1405:592f45721ab1
Date: 2014-09-22 12:54 +0200
http://bitbucket.org/pypy/stmgc/changeset/592f45721ab1/
Log: actually make the file big enough
diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -476,7 +476,7 @@
(long)(NB_READMARKER_PAGES * 4096UL)));
if (mmap(readmarkers, NB_READMARKER_PAGES * 4096UL,
PROT_READ | PROT_WRITE,
- MAP_FIXED | MAP_PAGES_FLAGS, -1, 0) != readmarkers) {
+ MAP_FIXED | MAP_SHARED | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0) !=
readmarkers) {
/* fall-back */
#if STM_TESTS
stm_fatalerror("reset_transaction_read_version: %m");
diff --git a/c8/stm/core.h b/c8/stm/core.h
--- a/c8/stm/core.h
+++ b/c8/stm/core.h
@@ -19,7 +19,6 @@
#define NB_PAGES (2500*256) // 2500MB
#define NB_SEGMENTS STM_NB_SEGMENTS
#define NB_SEGMENTS_MAX 240 /* don't increase NB_SEGMENTS past this */
-#define MAP_PAGES_FLAGS (MAP_SHARED | MAP_ANONYMOUS | MAP_NORESERVE)
#define NB_NURSERY_PAGES (STM_GC_NURSERY/4)
#define TOTAL_MEMORY (NB_PAGES * 4096UL * NB_SEGMENTS)
diff --git a/c8/stm/pages.c b/c8/stm/pages.c
--- a/c8/stm/pages.c
+++ b/c8/stm/pages.c
@@ -40,6 +40,16 @@
mprotect(segment_base + pagenum * 4096UL,
count * 4096UL, PROT_NONE);
+ /* char *result = mmap( */
+ /* segment_base + pagenum * 4096UL, */
+ /* count * 4096UL, */
+ /* PROT_NONE, */
+ /* MAP_FIXED|MAP_NORESERVE|MAP_PRIVATE|MAP_ANONYMOUS, */
+ /* -1, 0); */
+ /* if (result == MAP_FAILED) */
+ /* stm_fatalerror("pages_initialize_shared failed (mmap):
%m"); */
+
+
long amount = count;
while (amount-->0) {
set_page_status_in(i, pagenum + amount, PAGE_NO_ACCESS);
diff --git a/c8/stm/setup.c b/c8/stm/setup.c
--- a/c8/stm/setup.c
+++ b/c8/stm/setup.c
@@ -20,7 +20,7 @@
if (stm_object_pages_fd == -1)
stm_fatalerror("%s failed (stm_open): %m", reason);
- if (ftruncate(stm_object_pages_fd, NB_SHARED_PAGES) != 0)
+ if (ftruncate(stm_object_pages_fd, NB_SHARED_PAGES * 4096UL) != 0)
stm_fatalerror("%s failed (ftruncate): %m", reason);
stm_file_pages = mmap(NULL, NB_SHARED_PAGES * 4096UL,
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit