1 2007-05-09 Jonathan Chambers <joncham@gmail.com>
3 * win32_threads.c: If SuspendThread fails, don't abort. Instead
4 remove thread from GC, as this only seems to happen when thread is
7 2007-03-29 Zoltan Varga <vargaz@gmail.com>
9 * autogen.sh: Applied patch from Priit Laes <amd@store20.com>. Fix the running
12 * ltmain.sh config.sub config.guess: Removed, libtoolize creates them now.
14 2007-03-13 Jonathan Chambers <joncham@gmail.com>
16 * include/gc.h: Fix _WIN64 typedefs.
17 * libgc.vcproj: Fix Release target and begin Win64 port.
19 2007-02-01 Geoff Norton <gnorton@customerdna.com>
21 * include/private/gc_pthread_redirects.h:
22 * include/private/gc_config_macros.h:
23 * include/private/gc_priv.h:
26 * specific.c: Support for NetBSD-CURRENT. Loosely based on NetBSD
29 2006-12-22 Robert Jordan <robertj@gmx.net>
31 * include/private/gcconfig.h, os_dep.c:
32 Add FreeBSD/amd64 support. Based on a FreeBSD Port Collection patch.
35 2006-11-19 Allan Hsu <allan@counterpop.net>
37 * libgc/darwin_stop_world.c, libgc/include/private/gc_priv.h,
38 libgc/os_dep.c: Fixes to make the GC work on OSX/Intel with XCode
39 2.4 (10.4u SDK and newer).
41 This code should work with older versions of the SDK as well.
43 Tue Oct 10 16:58:37 CEST 2006 Paolo Molaro <lupus@ximian.com>
45 * darwin_stop_world.c: patch from Allan Hsu <allan@counterpop.net>
46 to avoid using memory just after freeing it.
48 2006-08-31 Zoltan Varga <vargaz@freemail.hu>
50 * libgc.vcproj: Define GC_INSIDE_DLL on VC build too.
52 2006-08-18 Zoltan Varga <vargaz@gmail.com>
54 * Makefile.am (EXTRA_DIST): Fix make dist.
56 * libtool.m4: Removed, should not be in SVN.
58 2006-07-19 Zoltan Varga <vargaz@gmail.com>
60 * configure.in: Applied patch from Sergey Tikhonov <tsv@solvo.ru>. Beginning
63 2006-06-28 Martin Baulig <martin@ximian.com>
65 * darwin_stop_world.c, pthread_support.c: Committing a patch from
66 Allan Hsu <allan@imeem.com> to fix memory leaks; see bug #78628.
68 2006-06-26 Zoltan Varga <vargaz@gmail.com>
70 * solaris_threads.c: And another one.
72 * solaris_pthreads.c: Avoid another solaris/x86 #error.
74 2006-04-08 Zoltan Varga <vargaz@gmail.com>
76 * dyn_load.c: Avoid #error "large files are not supported by libelf" errors on solaris/x86.
78 2006-05-24 Martin Baulig <martin@ximian.com>
80 * doc/debugger-support.txt: Removed; this issue turned out to be
81 something completely different and the patch mentioned in this
82 file is already reverted.
84 2006-05-23 Zoltan Varga <vargaz@gmail.com>
86 * os_dep.c (GC_unix_get_mem): Add an assert to bail out early if the runtime is
87 run on a machine with smaller page size than HBLKSIZE.
89 2006-05-19 Martin Baulig <martin@ximian.com>
91 * include/gc.h: Don't include "libgc-mono-debugger.h".
93 * pthread_support.c, pthread_stop_world.c: Include it here.
95 2006-05-17 Martin Baulig <martin@ximian.com>
97 * pthread-support.c, pthread-stop-world.c: Put the debugger stuff
98 inside a `#if LIBGC_MONO_DEBUGGER_SUPPORTED' conditional.
100 2006-05-17 Martin Baulig <martin@ximian.com>
102 Fix a weird race condition which prevented XSP from working inside
103 the debugger - see doc/debugger-issues.txt for details.
105 * include/gc.h: Moved the "libgc-mono-debugger.h" #include down
106 after the gc_pthread_redirects.h one.
108 * include/libgc-mono-debugger.h
109 (GCThreadFunctions): Added `thread_created' and `thread_exited'.
110 (GC_mono_debugger_add_all_threads): New function prototype.
112 * pthread_stop_world.c (gc_thread_vtable): Allow the vtable and
113 any function in it be NULL; use NULL as the default vtable.
114 (GC_mono_debugger_add_all_threads): New public function.
117 (GC_delete_thread): Call `gc_thread_vtable->thread_exited()'.
118 (GC_thr_init): Call `gc_thread_vtable->thread_created()'.
120 2006-04-05 Zoltan Varga <vargaz@gmail.com>
122 * include/private/gcconfig.h (LINUX and SPARC): Applied patch from
123 David S. Miller <davem@davemloft.net>: Do not
124 use _etest and GC_SysVGetDataStart() to figure out DATASTART.
125 Instead use either SEARCH_FOR_DATA_START or __environ, based
128 2006-03-25 Zoltan Varga <vargaz@gmail.com>
130 * configure.in: Applied patch from David S. Miller <davem@davemloft.net>: Fix support for sparc/linux.
132 Mon Mar 20 18:56:21 CET 2006 Paolo Molaro <lupus@ximian.com>
134 * include/gc.h: enable pthread redirection on darwin, too.
135 * include/gc_pthread_redirects.h: completed from Bryan Berg.
137 Thu Feb 9 16:20:55 CET 2006 Paolo Molaro <lupus@ximian.com>
139 * os_dep.c, include/private/gcconfig.h, darwin_stop_world.c:
140 OSX/x86 support, mostly from Geoff Norton <gnorton@customerdna.com>.
142 Wed Feb 1 18:23:55 CET 2006 Paolo Molaro <lupus@ximian.com>
144 * pthread_support.c, *: back out Zoltan's patch since it's
146 The correct fix it to execute the cleanup from inside
147 the thread also when using the __thread var to access the
150 2006-02-01 Zoltan Varga <vargaz@gmail.com>
152 * pthread_support.c (GC_thread_deregister_foreign): New public API
153 function to deregister a foreign thread from the GC.
154 (GC_destroy_thread_local): Clean up the TLS key too.
156 Tue Jan 24 12:34:06 CET 2006 Paolo Molaro <lupus@ximian.com>
158 * *: update from upstream changes.
160 2006-01-21 Martin Baulig <martin@ximian.com>
162 * include/Makefile.am: Don't install libgc-mono-debugger.h.
164 2006-01-21 Martin Baulig <martin@ximian.com>
166 * include/libgc-mono-debugger.h: Call the conditional
167 `_IN_THE_MONO_DEBUGGER', not `IN_MONO_DEBUGGER'.
169 2006-01-11 Zoltan Varga <vargaz@gmail.com>
171 * include/private/gcconfig.h: Undef _FILE_OFFSET_BITS on sparc.
173 2006-01-03 Geoff Norton <gnorton@customerdna.com>
175 * darwin_stop_world.c: Merge a patch from Bruce Mitchener that fixes a small
178 2005-12-26 Zoltan Varga <vargaz@gmail.com>
180 * include/private/gcconfig.h: Disable PROC_VDB on solaris/x86 as it
181 doesn't seem to work.
183 2005-12-06 Todd Berman <tberman@off.net>
185 * pthread_support.c (GC_thread_register_foreign): Wrap a GC_printf1
186 inside a #ifdef DEBUG_THREADS like the others. Based on a patch from
187 Bryan Berg (bryan AT imeem DOT com).
189 2005-10-11 Zoltan Varga <vargaz@gmail.com>
191 * pthread_support.c (GC_thread_deregister_foreign): Make this return
192 void instead of void*.
194 2005-09-29 Raja R Harinath <harinath@gmail.com>
196 * configure.host: Fix syntax error.
198 2005-08-24 Zoltan Varga <vargaz@gmail.com>
200 * win32_threads.c: If GC_INSIDE_DLL is defined, define the DllMain function for automatic registration
201 of threads with the GC.
203 * configure.in: Add an option for turning GC_INSIDE_DLL on.
205 2005-08-25 Zoltan Varga <vargaz@freemail.hu>
207 * solaris_threads.c (GC_thread_register_foreign): Add dummy implementation.
209 Mon Aug 22 10:41:41 BST 2005 Paolo Molaro <lupus@ximian.com>
211 * include/private/gc_locks.h: make gcc generate correct code for swp
212 (patch by tomba@bat.org, Tomi Valkeinen).
214 2005-08-20 Zoltan Varga <vargaz@freemail.hu>
216 * include/private/gc_locks.h: Fix compilation of GC_test_and_set on IA64 with gcc-3.3.5.
218 Thu Aug 18 18:08:54 CEST 2005 Paolo Molaro <lupus@ximian.com>
220 * include/private/gcconfig.h: use LINUX_STACKBOTTOM on ARM Linux.
222 Mon Aug 1 16:49:45 CEST 2005 Paolo Molaro <lupus@ximian.com>
224 * include/private/pthread_support.h, pthread_support.c: added
225 patch to support registering new threads at runtime (from
226 Michael Meeks <michael.meeks@novell.com>).
228 2005-07-07 Raja R Harinath <rharinath@novell.com>
230 * Makefile.am (INCLUDES): Add $(top_builddir)/.. to pick up mono's
233 Thu Jul 7 12:15:22 CEST 2005 Paolo Molaro <lupus@ximian.com>
235 * pthread_support.c: fix compilation when TLS_ALLOC is not defined.
237 Thu Jul 7 11:59:42 CEST 2005 Paolo Molaro <lupus@ximian.com>
239 * pthread_support.c, Makefile.am: make the __thread var use
240 fast access if available (and avoid dlopen issue, bug #75390).
242 2005-07-05 Ben Maurer <bmaurer@ximian.com>
244 * pthread_stop_world.c (pthread_start_world, _GC_suspend_handler):
245 Make sure that all threads have been started before releasing the
246 GC_lock. Otherwise, the thread table can be corrupt in the restart
247 handler, causing deadlocks and segfaults.
249 2005-06-22 Zoltan Varga <vargaz@freemail.hu>
251 * include/private/gcconfig.h: Fix amd64 build.
253 2005-06-21 Ben Maurer <bmaurer@ximian.com>
255 * configure.host: remove -fexceptions, messes up with nptl
258 2005-06-17 Zoltan Varga <vargaz@freemail.hu>
260 * pthread_support.c: Workaround gcc-3.3 compiler bug.
262 2005-05-26 Sebastien Pouliot <sebastien@ximian.com>
264 * libgc.vcproj: Project file for libgc.
266 2005-05-19 Zoltan Varga <vargaz@freemail.hu>
268 * configure.in: Handle i386-*-linux* as well. Fixes #74960.
270 Tue May 3 16:28:26 CEST 2005 Paolo Molaro <lupus@ximian.com>
272 * os_dep.c: remove usage of libc private symbol.
274 2005-05-02 Miguel de Icaza <miguel@novell.com>
276 * pthread_stop_world.c (GC_restart_handler, GC_suspend_handler):
277 Wrap the original routines into methods that preserve the value of
280 2005-04-18 Zoltan Varga <vargaz@freemail.hu>
282 * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
284 2005-04-15 Zoltan Varga <vargaz@freemail.hu>
286 * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
288 2005-04-11 Zoltan Varga <vargaz@freemail.hu>
290 * include/private/gcconfig.h configure.in os_dep.c dyn_load.c:
291 Applied some freebsd patch from Bill Middleton <flashdict@gmail.com>.
293 2005-04-06 Zoltan Varga <vargaz@freemail.hu>
295 * solaris_pthreads.c (GC_pthread_detach): Add locking.
297 * include/gc_pthread_redirects.h (pthread_detach): Override pthread_detach too.
299 * solaris_pthreads.c (GC_pthread_detach): Override pthread_detach too. Fixes
302 2005-03-29 Zoltan Varga <vargaz@freemail.hu>
304 * os_dep.c: Add ability to fall back to mmap-ing memory when sbrk
307 * include/private/gcconfig.h: Enable FALLBACK_TO_MMAP on amd64. Fixes
310 * config.guess config.sub ltmain.sh: Update these files with more
311 up-to-date versions. Fixes #74071.
313 2005-03-09 Zoltan Varga <vargaz@freemail.hu>
315 * solaris_threads.c (GC_thread_is_registered): Add this for solaris
318 * pthread_support.c (GC_thread_is_registered): Move this outside of
319 the #ifdef THREAD_LOCAL_ALLOC.
321 2005-03-03 Zoltan Varga <vargaz@freemail.hu>
323 * include/gc.h pthread_support.c win32_threads.: Add
324 GC_thread_is_registered API function.
326 2005-02-17 Raja R Harinath <rharinath@novell.com>
328 * acinclude.m4: Don't include distributed libtool.m4.
330 Wed Feb 16 22:30:54 CET 2005 Paolo Molaro <lupus@ximian.com>
332 * alloc.c: tune the code to collect instead of expanding
333 the heap if there are many finalizers and we reclaimed some
334 memory from cleaning the finalization queue (should fix
335 bug #71001 and #70701).
337 2005-02-07 Geoff Norton <gnorton@customerdna.com>
339 * include/private/gc_priv.h: Bump the max root sets to 1024
341 Mon Jan 24 16:39:42 CET 2005 Paolo Molaro <lupus@ximian.com>
343 * alloc.c, include/gc.h: add event notification, mostly from
344 a patch by Ben Maurer.
346 2005-01-23 Geoff Norton <gnorton@customerdna.com>
348 * os_dir.c: Change GC_task_self to be static everywhere on Darwin.
349 Allows gcc4.0 to compile.
351 Tue Jan 18 11:19:47 CET 2005 Paolo Molaro <lupus@ximian.com>
353 * pthread_stop_world.c: handle EINTR from sem_wait() call.
355 2004-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
357 * include/private/gc_priv.h: use the test glib does
360 2004-08-20 Zoltan Varga <vargaz@freemail.hu>
362 * include/private/gc_priv.h (__GNUC_PREREQ): Fix typo spotted by Ben.
364 * include/gc_local_alloc.h pthread_support.c: Add
365 GC_local_gcj_fast_malloc.
367 * include/private/gc_priv.h (EXPECT): Enable this on modern versions
370 2004-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
372 * pthread_support.c: make __thread variable static
374 * include/gc_local_alloc.c: make the other headers get
375 included before we define our own variable. This fixes
376 up an ordering problem with GCJ and thread local alloc.
378 The problem was that gc.h needed to include gc_local_alloc.h
379 before gc_gcj.h. However, when gc.h was included after
380 GC_LOCAL_ALLOC_H was #defined, it would not include
383 2004-08-16 Zoltan Varga <vargaz@freemail.hu>
385 * Makefile.am: Create a static version of libmonogc for inclusion into
388 2004-07-27 John Merryweather Cooper <john_m_cooper@yahoo.com>
390 * configure.in: Fix to properly select flags for pthreads
391 on FreeBSD 4.x (aka -STABLE) and 5.x (aka -CURRENT).
393 2004-07-01 Zoltan Varga <vargaz@freemail.hu>
395 * include/install-sh doc/install-sh: New files.
397 2004-06-30 Zoltan Varga <vargaz@freemail.hu>
399 * include/private/gc_priv.h (SMALL_OBJ): Add Hans' fix for crashes
402 Thu Jun 24 15:39:00 CEST 2004 Paolo Molaro <lupus@ximian.com>
404 * alloc.c: use Hans' fix for bug #59557.
406 2004-06-18 Dick Porter <dick@ximian.com>
408 * darwin_stop_world.c: Make the world actually stop. This seems
409 to fix the finalizer thread signalling deadlock in 58706.
411 Sat Jun 5 19:38:20 CEST 2004 Paolo Molaro <lupus@ximian.com>
413 * alloc.c: temporary fix for bug #59557.
415 Tue May 25 13:41:08 EDT 2004 Paolo Molaro <lupus@ximian.com>
417 * darwin_stop_world.c: more thread died races fixes.
419 2004-05-21 Martin Baulig <martin@ximian.com>
421 * pthread_stop_world.c: Merged the changes from linux_threads.c.
423 * linux_threads.c: Removed, this file no longer exists in the
424 latest upstream version.
426 2004-05-20 Martin Baulig <martin@ximian.com>
428 * libgc.patch: Removed. There's no need to have this in a
429 separate file, just use CVS.
431 2004-05-20 Jackson Harper <jackson@ximian.com>
433 * Makefile.am: Remove tests from EXTRA_DIST.
435 Wed May 19 18:57:30 CEST 2004 Paolo Molaro <lupus@ximian.com>
437 * darwin_stop_world.c: deal with threads that die before they can be
438 suspended (should solce the thread_info failed aborts).
440 Wed May 19 18:42:23 CEST 2004 Paolo Molaro <lupus@ximian.com>
442 * configure.in, Makefile.am: update correctly from the libgc sources:
443 this excludes linux_threads.c from the build: Martin will have to port
444 his changes to the new code, since linux_threads.c doesn't exist
445 anymore in the upstream sources.
447 2004-05-19 Raja R Harinath <rharinath@novell.com>
449 * configure.in ($enable_embed_check): New internal option that
450 will be passed by mono's configure.
451 (THREADS): Use $with_libgc_threads, which is passed by mono's
454 2004-05-18 Martin Baulig <martin@ximian.com>
456 Importing Boehm GC 6.3 alpha 6.
458 2004-03-24 Ben Maurer <bmaurer@users.sourceforge.net>
460 * gcj_mlc.c: Do finalization.
462 This is a patch from Hans Boehm that fixes a bug where
463 GC_gcj_malloc never does finalization.
466 http://www.hpl.hp.com/hosted/linux/mail-archives/gc/2004-March/000359.html
467 http://bugzilla.ximian.com/show_bug.cgi?id=55644
471 I am checking this in at Zoltan's request.
473 2003-11-07 Zoltan Varga <vargaz@freemail.hu>
475 * autogen.sh: Fix previous patch and silence noisy GNU which.
477 * autogen.sh: Applied patch from Peter Teichman (peter@ximian.com).
478 Use 'glibtool' instead of 'libtool' on OSX.
480 2003-10-01 Pedro MartÃnez Juliá <yoro@wanadoo.es>
482 * Makefile.am: Change lib_LTLIBRARIES to noinst_LTLIBRARIES because
483 of libmonogc is included inside libmono and without this change it
484 breaks down and not include it.
486 2003-09-26 Zoltan Varga <vargaz@freemail.hu>
488 * mips_sgi_mach_dep.S: Remove since it is a duplicate of .s and it
489 breaks cvs checkout under windows.
491 Wed Sep 17 17:29:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
493 * configure.in: disable ALL_INTERIOR_POINTERS: managed pointers
494 are not allowed in the heap, so this should be safe and it helps
495 reducing false positives.
497 2003-08-28 Dick Porter <dick@ximian.com>
500 * aix_irix_threads.c: Applied bug fix from alpha libgc
502 2003-08-26 Martin Baulig <martin@ximian.com>
504 Imported Boehm GC 6.2.
506 2003-06-20 Martin Baulig <martin@ximian.com>
508 * include/gc.h: Fixed compiler warnings.
510 2003-06-09 Martin Baulig <martin@ximian.com>
512 * include/libgc-mono-debugger.h: New header file. This is
513 installed as <mono/private/libgc-mono-debugger.h>, but it's a
514 private header files and may only be used by the Mono Debugger.
516 * Makefile.am: Build libmonogc.la and install it. For some
517 reason, using a libtool convenience archive doesn't work here.
519 2003-06-08 Martin Baulig <martin@ximian.com>
521 * libgc-mono.pc.in: Removed.
523 * Makefile.am: Don't install anything.
525 * configure.in: We're now embedded in mono and can't be built as a
526 stand-alone module any longer.
528 2003-05-17 Martin Baulig <martin@ximian.com>
530 * libgc.patch, libgc.log: Added patch against the original version
531 and a ChangeLog entry.
533 2003-05-17 Martin Baulig <martin@ximian.com>
535 * misc.c, os_dep.c, include/private/gc_priv.h: Back to the
538 * linux_threads.c: Use the `gc_thread_vtable' internally in this
539 file instead of calling it from the header files.
541 2003-05-16 Martin Baulig <martin@ximian.com>
543 * include/gc.h (GCThreadFunctions): Removed the `pthread_*'
544 function since we don't need them here.
546 * include/gc_pthread_redirects.h: Put back the original version.
548 2003-04-08 Alp Toker <alp@atoker.com>
550 * configure.in: fix automake 1.6 compatibility without breaking
551 previous versions (AM_PROG_AS)
553 2003-03-31 Martin Baulig <martin@ximian.com>
555 * include/gc.h (GCThreadFunctions): New type.
556 (gc_thread_vtable): New global variable.
558 * include/gc_pthread_redirects.h: Use the `gc_thread_vtable'
559 vtable for the redirects instead of calling the methods directly.
560 This allows us to override them at runtime.
562 2003-03-31 Martin Baulig <martin@ximian.com>
564 * include/Makefile.am: Install gc_pthread_redirects.h.
566 * include/gc.h: `#include <gc/gc_pthread_redirects.h>', not
567 `#include "gc_pthread_redirects.h"'.
569 2003-03-31 Martin Baulig <martin@ximian.com>
571 * configure.in: Call the package `libgc-mono'.
573 * libgc-mono.pc.in: Added pkg-config files.
575 2003-03-31 Martin Baulig <martin@ximian.com>
577 This is a modified version of Boehm GC 6.1.