|
|
385abae |
Description: <short summary of the patch>
|
|
|
385abae |
TODO: Put a short summary on the line above and replace this paragraph
|
|
|
385abae |
with a longer explanation of this change. Complete the meta-information
|
|
|
385abae |
with other relevant fields (see below for details). To make it easier, the
|
|
|
385abae |
information below has been extracted from the changelog. Adjust it or drop
|
|
|
385abae |
it.
|
|
|
385abae |
.
|
|
|
385abae |
gcl (2.6.12-4) unstable; urgency=medium
|
|
|
385abae |
.
|
|
|
385abae |
* Version_2_6_13pre3
|
|
|
385abae |
Author: Camm Maguire <camm@debian.org>
|
|
|
385abae |
|
|
|
385abae |
---
|
|
|
385abae |
The information above should follow the Patch Tagging Guidelines, please
|
|
|
385abae |
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
|
|
|
385abae |
are templates for supplementary fields that you might want to add:
|
|
|
385abae |
|
|
|
385abae |
Origin: <vendor|upstream|other>, <url of original patch>
|
|
|
385abae |
Bug: <url in upstream bugtracker>
|
|
|
385abae |
Bug-Debian: https://bugs.debian.org/<bugnumber>
|
|
|
385abae |
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
|
|
|
385abae |
Forwarded: <no|not-needed|url proving that it has been forwarded>
|
|
|
385abae |
Reviewed-By: <name and email of someone who approved the patch>
|
|
|
385abae |
Last-Update: <YYYY-MM-DD>
|
|
|
385abae |
|
|
|
385abae |
--- gcl-2.6.12.orig/h/bsd.h
|
|
|
385abae |
+++ gcl-2.6.12/h/bsd.h
|
|
|
385abae |
@@ -33,7 +33,7 @@ filecpy(save, original, stsize - sizeof(
|
|
|
385abae |
|
|
|
385abae |
extern char etext;
|
|
|
385abae |
|
|
|
385abae |
-#define INIT_ALLOC heap_end = core_end = sbrk(0);
|
|
|
385abae |
+#define INIT_ALLOC heap_end = core_end = PCEI(sbrk(0),PAGESIZE);
|
|
|
385abae |
|
|
|
385abae |
#define SYM_EXTERNAL_P(sym) ((sym)->n_type & N_EXT)
|
|
|
385abae |
|
|
|
385abae |
--- gcl-2.6.12.orig/o/alloc.c
|
|
|
385abae |
+++ gcl-2.6.12/o/alloc.c
|
|
|
385abae |
@@ -229,9 +229,7 @@ alloc_page(long n) {
|
|
|
385abae |
|
|
|
385abae |
if (!s) {
|
|
|
385abae |
|
|
|
385abae |
- if (nn>(holepage - (in_signal_handler? 0 :
|
|
|
385abae |
- available_pages-n<=reserve_pages_for_signal_handler ? 0 :
|
|
|
385abae |
- reserve_pages_for_signal_handler))) {
|
|
|
385abae |
+ if (nn>holepage) {
|
|
|
385abae |
|
|
|
385abae |
|
|
|
385abae |
fixnum d=available_pages-nn;
|
|
|
385abae |
@@ -241,12 +239,6 @@ alloc_page(long n) {
|
|
|
385abae |
d=d<0 ? 0 : d;
|
|
|
385abae |
d=new_holepage
|
|
|
385abae |
|
|
|
385abae |
- if (in_signal_handler)/*FIXME*/
|
|
|
385abae |
- fprintf(stderr,"Can't do relocatable gc in signal handler. \
|
|
|
385abae |
-Try to allocate more space to save for allocation during signals: \
|
|
|
385abae |
-eg to add 20 more do (si::set-hole-size %ld %d)\n...start over ",
|
|
|
385abae |
- new_holepage, 20+ reserve_pages_for_signal_handler); fflush(stderr); exit(1);
|
|
|
385abae |
-
|
|
|
385abae |
resize_hole(d+nn,t_relocatable);
|
|
|
385abae |
|
|
|
385abae |
}
|