* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
@ 2005-05-21 20:09 ` pinskia at gcc dot gnu dot org
2005-05-21 20:14 ` pinskia at gcc dot gnu dot org
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-05-21 20:09 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Component|java |libgcj
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
2005-05-21 20:09 ` [Bug libgcj/21703] " pinskia at gcc dot gnu dot org
@ 2005-05-21 20:14 ` pinskia at gcc dot gnu dot org
2005-05-21 23:48 ` tromey at gcc dot gnu dot org
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-05-21 20:14 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-05-21 20:14 -------
Confirmed, looks like the intern hash table becomes full.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2005-05-21 20:14:33
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
2005-05-21 20:09 ` [Bug libgcj/21703] " pinskia at gcc dot gnu dot org
2005-05-21 20:14 ` pinskia at gcc dot gnu dot org
@ 2005-05-21 23:48 ` tromey at gcc dot gnu dot org
2005-05-21 23:56 ` tromey at gcc dot gnu dot org
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-05-21 23:48 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tromey at gcc dot gnu dot org 2005-05-21 23:48 -------
Testing a patch.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |tromey at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
` (2 preceding siblings ...)
2005-05-21 23:48 ` tromey at gcc dot gnu dot org
@ 2005-05-21 23:56 ` tromey at gcc dot gnu dot org
2005-05-22 0:38 ` tromey at gcc dot gnu dot org
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-05-21 23:56 UTC (permalink / raw)
To: gcc-bugs
------- 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
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
` (3 preceding siblings ...)
2005-05-21 23:56 ` tromey at gcc dot gnu dot org
@ 2005-05-22 0:38 ` tromey at gcc dot gnu dot org
2005-05-22 1:05 ` cvs-commit at gcc dot gnu dot org
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-05-22 0:38 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tromey at gcc dot gnu dot org 2005-05-22 00:37 -------
One more note -- the test case will loop infinitely
even when the intern() bug has been fixed, since every
'char' value is <= \uffff
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
` (4 preceding siblings ...)
2005-05-22 0:38 ` tromey at gcc dot gnu dot org
@ 2005-05-22 1:05 ` cvs-commit at gcc dot gnu dot org
2005-05-22 1:06 ` tromey at gcc dot gnu dot org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-05-22 1:05 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-05-22 01:04 -------
Subject: Bug 21703
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-4_0-branch
Changes by: tromey@gcc.gnu.org 2005-05-22 01:04:47
Modified files:
libjava : ChangeLog
libjava/java/lang: natString.cc
libjava/java/lang/ref: natReference.cc
Log message:
PR libgcj/21703:
* java/lang/ref/natReference.cc (find_slot): Handle case where
table has no NULL entries.
* java/lang/natString.cc (_Jv_StringFindSlot): Handle case where
table has no NULL entries.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.3391.2.74&r2=1.3391.2.75
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/java/lang/natString.cc.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.36&r2=1.36.12.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/java/lang/ref/natReference.cc.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.6&r2=1.6.72.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
` (5 preceding siblings ...)
2005-05-22 1:05 ` cvs-commit at gcc dot gnu dot org
@ 2005-05-22 1:06 ` tromey at gcc dot gnu dot org
2005-05-25 15:25 ` cvs-commit at gcc dot gnu dot org
2005-05-25 15:26 ` tromey at gcc dot gnu dot org
8 siblings, 0 replies; 10+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-05-22 1:06 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tromey at gcc dot gnu dot org 2005-05-22 01:06 -------
I've checked in a patch on the 4.0 branch.
I will put it on the trunk when it emerges from its current
slushy state; I am leaving the PR open until then.
I'm not planning to put this on the 3.4 branch, but if someone
is motivated I think they are free to do so.
--
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.0.1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
` (6 preceding siblings ...)
2005-05-22 1:06 ` tromey at gcc dot gnu dot org
@ 2005-05-25 15:25 ` cvs-commit at gcc dot gnu dot org
2005-05-25 15:26 ` tromey at gcc dot gnu dot org
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-05-25 15:25 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-05-25 15:24 -------
Subject: Bug 21703
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: tromey@gcc.gnu.org 2005-05-25 15:23:57
Modified files:
libjava : ChangeLog
libjava/java/lang: natString.cc
libjava/java/lang/ref: natReference.cc
Log message:
PR libgcj/21703:
* java/lang/ref/natReference.cc (find_slot): Handle case where
table has no NULL entries.
* java/lang/natString.cc (_Jv_StringFindSlot): Handle case where
table has no NULL entries.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/ChangeLog.diff?cvsroot=gcc&r1=1.3631&r2=1.3632
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/java/lang/natString.cc.diff?cvsroot=gcc&r1=1.37&r2=1.38
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/java/lang/ref/natReference.cc.diff?cvsroot=gcc&r1=1.6&r2=1.7
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug libgcj/21703] hang when rapidly calling String.intern()
2005-05-21 19:55 [Bug java/21703] New: hang when rapidly calling String.intern() debian-gcc at lists dot debian dot org
` (7 preceding siblings ...)
2005-05-25 15:25 ` cvs-commit at gcc dot gnu dot org
@ 2005-05-25 15:26 ` tromey at gcc dot gnu dot org
8 siblings, 0 replies; 10+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-05-25 15:26 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From tromey at gcc dot gnu dot org 2005-05-25 15:24 -------
Fix checked in.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21703
^ permalink raw reply [flat|nested] 10+ messages in thread