This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libgcj/21703] hang when rapidly calling String.intern()
- From: "tromey at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 May 2005 23:56:28 -0000
- Subject: [Bug libgcj/21703] hang when rapidly calling String.intern()
- References: <20050521195525.21703.debian-gcc@lists.debian.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From tromey at gcc dot gnu dot org 2005-05-21 23:56 -------
In the upstream PR, a real deadlock is mentioned.
The backtrace shows the finalizer thread blocking.
Probably what is happening is that one thread is
spinning while looking for an empty slot in the string
hash table, and then the GC tries to finalize one of
these strings. The String finalizer tries to acquire
the lock already held by the thread looking for an
empty slot, resulting in deadlock.
This is just a theory, I would need at least backtraces
of all the threads to be sure.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703