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