[pypy-commit] stmgc c8-card-marking: Instead of SIGINT, raise SIGABRT here, and if that doesn't kill the process,
arigo
noreply at buildbot.pypy.org
Tue Mar 3 13:45:45 CET 2015
Author: Armin Rigo <arigo at tunes.org>
Branch: c8-card-marking
Changeset: r1689:3c11d9ba56a7
Date: 2015-03-03 13:46 +0100
http://bitbucket.org/pypy/stmgc/changeset/3c11d9ba56a7/
Log: Instead of SIGINT, raise SIGABRT here, and if that doesn't kill the
process, raise SIGKILL.
diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -228,7 +228,8 @@
addr >= stm_object_pages+TOTAL_MEMORY) {
/* actual segfault, unrelated to stmgc */
fprintf(stderr, "Segmentation fault: accessing %p\n", addr);
- raise(SIGINT);
+ raise(SIGABRT);
+ raise(SIGKILL);
}
int segnum = get_segment_of_linear_address(addr);
@@ -236,7 +237,8 @@
if (segnum != STM_SEGMENT->segment_num) {
fprintf(stderr, "Segmentation fault: accessing %p (seg %d) from"
" seg %d\n", addr, segnum, STM_SEGMENT->segment_num);
- raise(SIGINT);
+ raise(SIGABRT);
+ raise(SIGKILL);
}
dprintf(("-> segment: %d\n", segnum));
@@ -245,7 +247,8 @@
if (pagenum < END_NURSERY_PAGE) {
fprintf(stderr, "Segmentation fault: accessing %p (seg %d "
"page %lu)\n", addr, segnum, pagenum);
- raise(SIGINT);
+ raise(SIGABRT);
+ raise(SIGKILL);
}
DEBUG_EXPECT_SEGFAULT(false);
More information about the pypy-commit
mailing list