summaryrefslogtreecommitdiff
path: root/src/alloc.c
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>2005-10-30 07:36:35 +0000
committerRichard M. Stallman <rms@gnu.org>2005-10-30 07:36:35 +0000
commit4d74a5fc8e917db49cfe2a0c66cd2b0b9a1b9e9b (patch)
tree0dedd515e12c0e88db40773fdabef908a7654f02 /src/alloc.c
parent932dc33bafe239bcde85a5c75509120e208d19c6 (diff)
downloademacs-4d74a5fc8e917db49cfe2a0c66cd2b0b9a1b9e9b.tar.gz
(BYTES_USED): Use uordblks, not arena.
(bytes_used_when_reconsidered): New variable. (emacs_blocked_free): Set that.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/alloc.c b/src/alloc.c
index 90ef4ba4e81..5f4026b4cfb 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -138,6 +138,8 @@ static pthread_mutex_t alloc_mutex;
static __malloc_size_t bytes_used_when_full;
+static __malloc_size_t bytes_used_when_reconsidered;
+
/* Mark, unmark, query mark bit of a Lisp string. S must be a pointer
to a struct Lisp_String. */
@@ -521,7 +523,7 @@ display_malloc_warning ()
#ifdef DOUG_LEA_MALLOC
-# define BYTES_USED (mallinfo ().arena)
+# define BYTES_USED (mallinfo ().uordblks)
#else
# define BYTES_USED _bytes_used
#endif
@@ -1179,7 +1181,7 @@ emacs_blocked_free (ptr, ptr2)
The code here is correct as long as SPARE_MEMORY
is substantially larger than the block size malloc uses. */
&& (bytes_used_when_full
- > ((bytes_used_now = BYTES_USED)
+ > ((bytes_used_when_reconsidered = BYTES_USED)
+ max (malloc_hysteresis, 4) * SPARE_MEMORY)))
refill_memory_reserve ();