8c67ff5e0eb0f0c09741cc250ef78c05090fd498
[mono.git] / libgc / ChangeLog
1 2006-05-24  Martin Baulig  <martin@ximian.com>
2
3         * doc/debugger-support.txt: Removed; this issue turned out to be
4         something completely different and the patch mentioned in this
5         file is already reverted.
6
7 2006-05-23  Zoltan Varga  <vargaz@gmail.com>
8
9         * os_dep.c (GC_unix_get_mem): Add an assert to bail out early if the runtime is
10         run on a machine with smaller page size than HBLKSIZE.
11
12 2006-05-19  Martin Baulig  <martin@ximian.com>
13
14         * include/gc.h: Don't include "libgc-mono-debugger.h".
15
16         * pthread_support.c, pthread_stop_world.c: Include it here.
17
18 2006-05-17  Martin Baulig  <martin@ximian.com>
19
20         * pthread-support.c, pthread-stop-world.c: Put the debugger stuff
21         inside a `#if LIBGC_MONO_DEBUGGER_SUPPORTED' conditional.
22
23 2006-05-17  Martin Baulig  <martin@ximian.com>
24
25         Fix a weird race condition which prevented XSP from working inside
26         the debugger - see doc/debugger-issues.txt for details.
27
28         * include/gc.h: Moved the "libgc-mono-debugger.h" #include down
29         after the gc_pthread_redirects.h one.
30
31         * include/libgc-mono-debugger.h
32         (GCThreadFunctions): Added `thread_created' and `thread_exited'.
33         (GC_mono_debugger_add_all_threads): New function prototype.
34
35         * pthread_stop_world.c (gc_thread_vtable): Allow the vtable and
36         any function in it be NULL; use NULL as the default vtable.
37         (GC_mono_debugger_add_all_threads): New public function.
38
39         * pthread_support.c
40         (GC_delete_thread): Call `gc_thread_vtable->thread_exited()'.
41         (GC_thr_init): Call `gc_thread_vtable->thread_created()'.
42
43 2006-04-05  Zoltan Varga  <vargaz@gmail.com>
44
45         * include/private/gcconfig.h (LINUX and SPARC): Applied patch from 
46         David S. Miller <davem@davemloft.net>: Do not
47        use _etest and GC_SysVGetDataStart() to figure out DATASTART.
48        Instead use either SEARCH_FOR_DATA_START or __environ, based
49        upon GLIBC version.
50
51 2006-03-25  Zoltan Varga  <vargaz@gmail.com>
52
53         * configure.in: Applied patch from David S. Miller <davem@davemloft.net>: Fix support for sparc/linux.
54
55 Mon Mar 20 18:56:21 CET 2006 Paolo Molaro <lupus@ximian.com>
56
57         * include/gc.h: enable pthread redirection on darwin, too.
58         * include/gc_pthread_redirects.h: completed from Bryan Berg.
59
60 Thu Feb 9 16:20:55 CET 2006 Paolo Molaro <lupus@ximian.com>
61
62         * os_dep.c, include/private/gcconfig.h, darwin_stop_world.c:
63         OSX/x86 support, mostly from Geoff Norton <gnorton@customerdna.com>.
64
65 Wed Feb 1 18:23:55 CET 2006 Paolo Molaro <lupus@ximian.com>
66
67         * pthread_support.c, *: back out Zoltan's patch since it's
68         incorrect.
69         The correct fix it to execute the cleanup from inside
70         the thread also when using the __thread var to access the
71         current GC_thread.
72
73 2006-02-01  Zoltan Varga  <vargaz@gmail.com>
74
75         * pthread_support.c (GC_thread_deregister_foreign): New public API
76         function to deregister a foreign thread from the GC.
77         (GC_destroy_thread_local): Clean up the TLS key too.
78         
79 Tue Jan 24 12:34:06 CET 2006 Paolo Molaro <lupus@ximian.com>
80
81         * *: update from upstream changes.
82
83 2006-01-21  Martin Baulig  <martin@ximian.com>
84
85         * include/Makefile.am: Don't install libgc-mono-debugger.h.
86
87 2006-01-21  Martin Baulig  <martin@ximian.com>
88
89         * include/libgc-mono-debugger.h: Call the conditional
90         `_IN_THE_MONO_DEBUGGER', not `IN_MONO_DEBUGGER'.
91
92 2006-01-11  Zoltan Varga  <vargaz@gmail.com>
93
94         * include/private/gcconfig.h: Undef _FILE_OFFSET_BITS on sparc.
95
96 2006-01-03  Geoff Norton  <gnorton@customerdna.com>
97
98         * darwin_stop_world.c:  Merge a patch from Bruce Mitchener that fixes a small
99         leak on OS X.
100
101 2005-12-26  Zoltan Varga  <vargaz@gmail.com>
102
103         * include/private/gcconfig.h: Disable PROC_VDB on solaris/x86 as it
104         doesn't seem to work.
105
106 2005-12-06  Todd Berman  <tberman@off.net>
107
108         * pthread_support.c (GC_thread_register_foreign): Wrap a GC_printf1
109         inside a #ifdef DEBUG_THREADS like the others. Based on a patch from
110         Bryan Berg (bryan AT imeem DOT com).
111
112 2005-10-11  Zoltan Varga  <vargaz@gmail.com>
113
114         * pthread_support.c (GC_thread_deregister_foreign): Make this return
115         void instead of void*.
116
117 2005-09-29  Raja R Harinath  <harinath@gmail.com>
118
119         * configure.host: Fix syntax error.
120
121 2005-08-24  Zoltan Varga  <vargaz@gmail.com>
122
123         * win32_threads.c: If GC_INSIDE_DLL is defined, define the DllMain function for automatic registration
124         of threads with the GC.
125
126         * configure.in: Add an option for turning GC_INSIDE_DLL on.     
127
128 2005-08-25  Zoltan Varga  <vargaz@freemail.hu>
129
130         * solaris_threads.c (GC_thread_register_foreign): Add dummy implementation.
131
132 Mon Aug 22 10:41:41 BST 2005 Paolo Molaro <lupus@ximian.com>
133
134         * include/private/gc_locks.h: make gcc generate correct code for swp
135         (patch by tomba@bat.org, Tomi Valkeinen).
136
137 2005-08-20  Zoltan Varga  <vargaz@freemail.hu>
138
139         * include/private/gc_locks.h: Fix compilation of GC_test_and_set on IA64 with gcc-3.3.5.
140
141 Thu Aug 18 18:08:54 CEST 2005 Paolo Molaro <lupus@ximian.com>
142
143         * include/private/gcconfig.h: use LINUX_STACKBOTTOM on ARM Linux.
144
145 Mon Aug 1 16:49:45 CEST 2005 Paolo Molaro <lupus@ximian.com>
146
147         * include/private/pthread_support.h, pthread_support.c: added
148         patch to support registering new threads at runtime (from
149         Michael Meeks <michael.meeks@novell.com>).
150
151 2005-07-07  Raja R Harinath  <rharinath@novell.com>
152
153         * Makefile.am (INCLUDES): Add $(top_builddir)/.. to pick up mono's
154         config.h.
155
156 Thu Jul 7 12:15:22 CEST 2005 Paolo Molaro <lupus@ximian.com>
157
158         * pthread_support.c: fix compilation when TLS_ALLOC is not defined.
159
160 Thu Jul 7 11:59:42 CEST 2005 Paolo Molaro <lupus@ximian.com>
161
162         * pthread_support.c, Makefile.am: make the __thread var use
163         fast access if available (and avoid dlopen issue, bug #75390).
164
165 2005-07-05  Ben Maurer  <bmaurer@ximian.com>
166
167         * pthread_stop_world.c (pthread_start_world, _GC_suspend_handler):
168         Make sure that all threads have been started before releasing the
169         GC_lock. Otherwise, the thread table can be corrupt in the restart
170         handler, causing deadlocks and segfaults.
171
172 2005-06-22  Zoltan Varga  <vargaz@freemail.hu>
173
174         * include/private/gcconfig.h: Fix amd64 build.
175
176 2005-06-21  Ben Maurer  <bmaurer@ximian.com>
177
178         * configure.host: remove -fexceptions, messes up with nptl
179         includes, as on fc4.
180
181 2005-06-17  Zoltan Varga  <vargaz@freemail.hu>
182
183         * pthread_support.c: Workaround gcc-3.3 compiler bug.
184
185 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
186
187         * libgc.vcproj: Project file for libgc.
188
189 2005-05-19  Zoltan Varga  <vargaz@freemail.hu>
190
191         * configure.in: Handle i386-*-linux* as well. Fixes #74960.     
192
193 Tue May 3 16:28:26 CEST 2005 Paolo Molaro <lupus@ximian.com>
194
195         * os_dep.c: remove usage of libc private symbol.
196
197 2005-05-02  Miguel de Icaza  <miguel@novell.com>
198
199         * pthread_stop_world.c (GC_restart_handler, GC_suspend_handler):
200         Wrap the original routines into methods that preserve the value of
201         errno.  Fixes #74740
202
203 2005-04-18  Zoltan Varga  <vargaz@freemail.hu>
204
205         * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
206
207 2005-04-15  Zoltan Varga  <vargaz@freemail.hu>
208
209         * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
210
211 2005-04-11  Zoltan Varga  <vargaz@freemail.hu>
212
213         * include/private/gcconfig.h configure.in os_dep.c dyn_load.c: 
214         Applied some freebsd patch from Bill Middleton <flashdict@gmail.com>.
215
216 2005-04-06  Zoltan Varga  <vargaz@freemail.hu>
217
218         * solaris_pthreads.c (GC_pthread_detach): Add locking.
219
220         * include/gc_pthread_redirects.h (pthread_detach): Override pthread_detach too.
221
222         * solaris_pthreads.c (GC_pthread_detach): Override pthread_detach too. Fixes
223         #74223.
224
225 2005-03-29  Zoltan Varga  <vargaz@freemail.hu>
226
227         * os_dep.c: Add ability to fall back to mmap-ing memory when sbrk
228         fails.
229
230         * include/private/gcconfig.h: Enable FALLBACK_TO_MMAP on amd64. Fixes
231         #73882.
232
233         * config.guess config.sub ltmain.sh: Update these files with more
234         up-to-date versions. Fixes #74071.
235
236 2005-03-09  Zoltan Varga  <vargaz@freemail.hu>
237
238         * solaris_threads.c (GC_thread_is_registered): Add this for solaris
239         too.
240
241         * pthread_support.c (GC_thread_is_registered): Move this outside of
242         the #ifdef THREAD_LOCAL_ALLOC.
243
244 2005-03-03  Zoltan Varga  <vargaz@freemail.hu>
245
246         * include/gc.h pthread_support.c win32_threads.: Add 
247         GC_thread_is_registered API function.
248
249 2005-02-17  Raja R Harinath  <rharinath@novell.com>
250
251         * acinclude.m4: Don't include distributed libtool.m4.
252         
253 Wed Feb 16 22:30:54 CET 2005 Paolo Molaro <lupus@ximian.com>
254
255         * alloc.c: tune the code to collect instead of expanding
256         the heap if there are many finalizers and we reclaimed some
257         memory from cleaning the finalization queue (should fix
258         bug #71001 and #70701).
259
260 2005-02-07  Geoff Norton  <gnorton@customerdna.com>
261
262         * include/private/gc_priv.h: Bump the max root sets to 1024
263
264 Mon Jan 24 16:39:42 CET 2005 Paolo Molaro <lupus@ximian.com>
265
266         * alloc.c, include/gc.h: add event notification, mostly from 
267         a patch by Ben Maurer.
268
269 2005-01-23  Geoff Norton  <gnorton@customerdna.com>
270         
271         * os_dir.c: Change GC_task_self to be static everywhere on Darwin.
272         Allows gcc4.0 to compile.
273
274 Tue Jan 18 11:19:47 CET 2005 Paolo Molaro <lupus@ximian.com>
275
276         * pthread_stop_world.c: handle EINTR from sem_wait() call.
277
278 2004-08-20 Ben Maurer  <bmaurer@users.sourceforge.net>
279
280         * include/private/gc_priv.h: use the test glib does
281         for EXPECT.
282
283 2004-08-20  Zoltan Varga  <vargaz@freemail.hu>
284
285         * include/private/gc_priv.h (__GNUC_PREREQ): Fix typo spotted by Ben.
286
287         * include/gc_local_alloc.h pthread_support.c: Add 
288         GC_local_gcj_fast_malloc.
289
290         * include/private/gc_priv.h (EXPECT): Enable this on modern versions
291         of gcc.
292
293 2004-08-17 Ben Maurer  <bmaurer@users.sourceforge.net>
294
295         * pthread_support.c: make __thread variable static
296         
297         * include/gc_local_alloc.c: make the other headers get
298         included before we define our own variable. This fixes
299         up an ordering problem with GCJ and thread local alloc.
300         
301         The problem was that gc.h needed to include gc_local_alloc.h
302         before gc_gcj.h. However, when gc.h was included after
303         GC_LOCAL_ALLOC_H was #defined, it would not include
304         gc_local_alloc.h.
305
306 2004-08-16  Zoltan Varga  <vargaz@freemail.hu>
307
308         * Makefile.am: Create a static version of libmonogc for inclusion into
309         the mono executable.
310
311 2004-07-27  John Merryweather Cooper <john_m_cooper@yahoo.com>
312
313         * configure.in:  Fix to properly select flags for pthreads
314         on FreeBSD 4.x (aka -STABLE) and 5.x (aka -CURRENT).
315         
316 2004-07-01  Zoltan Varga  <vargaz@freemail.hu>
317
318         * include/install-sh doc/install-sh: New files.
319
320 2004-06-30  Zoltan Varga  <vargaz@freemail.hu>
321
322         * include/private/gc_priv.h (SMALL_OBJ): Add Hans' fix for crashes
323         seen on SPARC64.
324
325 Thu Jun 24 15:39:00 CEST 2004 Paolo Molaro <lupus@ximian.com>
326
327         * alloc.c: use Hans' fix for bug #59557.
328
329 2004-06-18  Dick Porter  <dick@ximian.com>
330
331         * darwin_stop_world.c: Make the world actually stop.  This seems
332         to fix the finalizer thread signalling deadlock in 58706.
333
334 Sat Jun 5 19:38:20 CEST 2004 Paolo Molaro <lupus@ximian.com>
335
336         * alloc.c: temporary fix for bug #59557.
337
338 Tue May 25 13:41:08 EDT 2004 Paolo Molaro <lupus@ximian.com>
339
340         * darwin_stop_world.c: more thread died races fixes.
341
342 2004-05-21  Martin Baulig  <martin@ximian.com>
343
344         * pthread_stop_world.c: Merged the changes from linux_threads.c.
345
346         * linux_threads.c: Removed, this file no longer exists in the
347         latest upstream version.
348
349 2004-05-20  Martin Baulig  <martin@ximian.com>
350
351         * libgc.patch: Removed.  There's no need to have this in a
352         separate file, just use CVS.
353
354 2004-05-20  Jackson Harper  <jackson@ximian.com>
355
356         * Makefile.am: Remove tests from EXTRA_DIST.
357         
358 Wed May 19 18:57:30 CEST 2004 Paolo Molaro <lupus@ximian.com>
359
360         * darwin_stop_world.c: deal with threads that die before they can be
361         suspended (should solce the thread_info failed aborts).
362
363 Wed May 19 18:42:23 CEST 2004 Paolo Molaro <lupus@ximian.com>
364
365         * configure.in, Makefile.am: update correctly from the libgc sources:
366         this excludes linux_threads.c from the build: Martin will have to port
367         his changes to the new code, since linux_threads.c doesn't exist
368         anymore in the upstream sources.
369
370 2004-05-19  Raja R Harinath  <rharinath@novell.com>
371
372         * configure.in ($enable_embed_check): New internal option that
373         will be passed by mono's configure.
374         (THREADS): Use $with_libgc_threads, which is passed by mono's
375         configure.
376
377 2004-05-18  Martin Baulig  <martin@ximian.com>
378
379         Importing Boehm GC 6.3 alpha 6.
380
381 2004-03-24 Ben Maurer  <bmaurer@users.sourceforge.net>
382
383         * gcj_mlc.c: Do finalization.
384
385         This is a patch from Hans Boehm that fixes a bug where
386         GC_gcj_malloc never does finalization.
387
388         See:
389         http://www.hpl.hp.com/hosted/linux/mail-archives/gc/2004-March/000359.html
390         http://bugzilla.ximian.com/show_bug.cgi?id=55644
391
392         Fixes #55644.
393
394         I am checking this in at Zoltan's request.
395
396 2003-11-07  Zoltan Varga  <vargaz@freemail.hu>
397
398         * autogen.sh: Fix previous patch and silence noisy GNU which.   
399         
400         * autogen.sh: Applied patch from Peter Teichman (peter@ximian.com). 
401         Use 'glibtool' instead of 'libtool' on OSX. 
402
403 2003-10-01  Pedro Martínez Juliá  <yoro@wanadoo.es>
404
405         * Makefile.am: Change lib_LTLIBRARIES to noinst_LTLIBRARIES because
406         of libmonogc is included inside libmono and without this change it
407         breaks down and not include it.
408
409 2003-09-26  Zoltan Varga  <vargaz@freemail.hu>
410
411         * mips_sgi_mach_dep.S: Remove since it is a duplicate of .s and it
412         breaks cvs checkout under windows.
413
414 Wed Sep 17 17:29:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
415
416         * configure.in: disable ALL_INTERIOR_POINTERS: managed pointers
417         are not allowed in the heap, so this should be safe and it helps
418         reducing false positives.
419
420 2003-08-28  Dick Porter  <dick@ximian.com>
421
422         * pthread_support.c:
423         * aix_irix_threads.c:  Applied bug fix from alpha libgc
424
425 2003-08-26  Martin Baulig  <martin@ximian.com>
426
427         Imported Boehm GC 6.2.
428
429 2003-06-20  Martin Baulig  <martin@ximian.com>
430
431         * include/gc.h: Fixed compiler warnings.
432
433 2003-06-09  Martin Baulig  <martin@ximian.com>
434
435         * include/libgc-mono-debugger.h: New header file.  This is
436         installed as <mono/private/libgc-mono-debugger.h>, but it's a
437         private header files and may only be used by the Mono Debugger.
438
439         * Makefile.am: Build libmonogc.la and install it.  For some
440         reason, using a libtool convenience archive doesn't work here.
441
442 2003-06-08  Martin Baulig  <martin@ximian.com>
443
444         * libgc-mono.pc.in: Removed.
445
446         * Makefile.am: Don't install anything.
447
448         * configure.in: We're now embedded in mono and can't be built as a
449         stand-alone module any longer.
450
451 2003-05-17  Martin Baulig  <martin@ximian.com>
452
453         * libgc.patch, libgc.log: Added patch against the original version
454         and a ChangeLog entry.
455
456 2003-05-17  Martin Baulig  <martin@ximian.com>
457
458         * misc.c, os_dep.c, include/private/gc_priv.h: Back to the
459         original version.
460
461         * linux_threads.c: Use the `gc_thread_vtable' internally in this
462         file instead of calling it from the header files.
463
464 2003-05-16  Martin Baulig  <martin@ximian.com>
465
466         * include/gc.h (GCThreadFunctions): Removed the `pthread_*'
467         function since we don't need them here.
468
469         * include/gc_pthread_redirects.h: Put back the original version.
470
471 2003-04-08  Alp Toker <alp@atoker.com>
472
473         * configure.in: fix automake 1.6 compatibility without breaking
474         previous versions (AM_PROG_AS)
475
476 2003-03-31  Martin Baulig  <martin@ximian.com>
477
478         * include/gc.h (GCThreadFunctions): New type.
479         (gc_thread_vtable): New global variable.
480
481         * include/gc_pthread_redirects.h: Use the `gc_thread_vtable'
482         vtable for the redirects instead of calling the methods directly.
483         This allows us to override them at runtime.     
484
485 2003-03-31  Martin Baulig  <martin@ximian.com>
486
487         * include/Makefile.am: Install gc_pthread_redirects.h.
488
489         * include/gc.h: `#include <gc/gc_pthread_redirects.h>', not
490         `#include "gc_pthread_redirects.h"'.
491
492 2003-03-31  Martin Baulig  <martin@ximian.com>
493
494         * configure.in: Call the package `libgc-mono'.
495
496         * libgc-mono.pc.in: Added pkg-config files.
497
498 2003-03-31  Martin Baulig  <martin@ximian.com>
499
500         This is a modified version of Boehm GC 6.1.
501