Re: [Gc] Infinite Loop in GC_clear_fl_marks

Bruce Hoult <[email protected]>
Newsgroups gmane.comp.programming.garbage-collection.boehmgc
Message-ID <CAMU+Ekz-bS-ZPETSEh3FTNEjZS6YfxRWfk=AZoHbPjdUG+fBRw@mail.gmail.com>
I over-simplified something in the previous message, and don't want to
mislead.

It's true that when objects are aded to a free list (except by GC_free())
they all come from the same (usually) 4 KB block of memory. However it's
not always a fresh empty block of memory as I gave the impression of.

Most of the time it is a previously used block in which some of the objects
are used and some are unused. In the previous marking phase (possibly many
seconds of CPU time ago) all the mark bits were initially cleared and then
some of them were set by the live object tracing algorithm. Only the
objects in the block whose mark bits are not set are added to the free list.

This is the sweep phase of the mark-sweep algorithm.

It follows from this that the sweep phase in bdwgc is always incremental,
interleaved with allocations and the general work of the program,
regardless of whether marking is incremental or stop-the-world.


On Tue, Mar 25, 2014 at 7:33 AM, Alexander Herz <[email protected]>wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi,
>
> I'm running bdwgc 7.3 on SUSE Linux Enterprise Server 10 sp3 in an MPI
> setting. One of our programs consistently (but not allways after the
> same number of iterations) enters an infinite loop with the following
> call stack:
>
> GC_malloc_atomic
> GC_generic_malloc_many
> GC_generic_malloc_inner
> GC_allocobj
> GC_collect_or_expand
> GC_try_to_collect_inner
> GC_finish_collection
> GC_clear_fl_marks <————
>
> The for(;;) loop never terminates because q never equals null. Also
> the value returned by GC_bytes_found negativ becomes negative.
>
> Any ideas what could be going wrong here or how to get more information?
>
> Thx,
> Alex
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.11 (GNU/Linux)
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iQEcBAEBAgAGBQJTMHpdAAoJEGSriSINjxXwlioIAJGX+u2v69PKhdAedJyDK2eT
> RP45RUbKhWuQSpmsIWecWVCjanlPjoyY2w2gl9bDct/3A1d6PChx7mmmn1cOB9gt
> 0pbw9VjT5a993i3TwjxGB7G6N8NLieYel7DaB5JXgWQGOh3oDk5NhUBVGmU73vzJ
> ffCOIssWaMKWW2n2CJXkkT5VoYphx7wLjIbNXdjFLbAQYwSPcaCueBkNsYu8ImQb
> zNggBdO55jre/BXEIDIFduEZW1p2BfSScUEA8L1zEMLlTYpxz+xhxOahriyU2sit
> 71VsQNBu8RwVuoBb8ZPmUh1OjWOHjHwgdgQ+9h06BYKzcAlJGZTaQBz55oiQJyE=
> =ZBxz
> -----END PGP SIGNATURE-----
> _______________________________________________
> bdwgc mailing list
> [email protected]
> https://lists.opendylan.org/mailman/listinfo/bdwgc
>
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>
>

_______________________________________________
bdwgc mailing list
[email protected]
https://lists.opendylan.org/mailman/listinfo/bdwgc
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.