Blob Blame Raw
Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 gcl (2.6.12-4) unstable; urgency=medium
 .
   * Version_2_6_13pre3
Author: Camm Maguire <camm@debian.org>

---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: <YYYY-MM-DD>

--- gcl-2.6.12.orig/h/bsd.h
+++ gcl-2.6.12/h/bsd.h
@@ -33,7 +33,7 @@ filecpy(save, original, stsize - sizeof(
 
 extern char etext;
 
-#define INIT_ALLOC heap_end = core_end = sbrk(0);
+#define INIT_ALLOC heap_end = core_end = PCEI(sbrk(0),PAGESIZE);
 
 #define SYM_EXTERNAL_P(sym) ((sym)->n_type & N_EXT)
      
--- gcl-2.6.12.orig/o/alloc.c
+++ gcl-2.6.12/o/alloc.c
@@ -229,9 +229,7 @@ alloc_page(long n) {
   
   if (!s) {
 
-    if (nn>(holepage - (in_signal_handler? 0 :
-		       available_pages-n<=reserve_pages_for_signal_handler ? 0 : 
-		       reserve_pages_for_signal_handler))) {
+    if (nn>holepage) {
 
 
       fixnum d=available_pages-nn;
@@ -241,12 +239,6 @@ alloc_page(long n) {
       d=d<0 ? 0 : d;
       d=new_holepage<d ? new_holepage : d;
       
-      if (in_signal_handler)/*FIXME*/
-	fprintf(stderr,"Can't do relocatable gc in signal handler. \
-Try to allocate more space to save for allocation during signals: \
-eg to add 20 more do (si::set-hole-size %ld %d)\n...start over ", 
-		new_holepage, 20+ reserve_pages_for_signal_handler); fflush(stderr); exit(1);
-
       resize_hole(d+nn,t_relocatable);
 
     }