[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #35263] libobjc2 can enter a deadlock during dtable initialization
From: |
Fred Kiefer |
Subject: |
[bug #35263] libobjc2 can enter a deadlock during dtable initialization |
Date: |
Sun, 08 Jan 2012 19:25:16 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1 |
Follow-up Comment #1, bug #35263 (project gnustep):
I just want to pass on the comment by David Chisnall, he still doesn't seem to
use Savannah. I am myself not totally convinced that David is right here. Even
though Apple doesn't support that behaviour doesn't mean libobjc2 should not
have it. Although it means, nobody should rely on it :-(
Here David's comment:
This can be closed as 'works as expected'. The attached test program
deadlocks in exactly the same way on OS X as it does with libobjc2 - the bug
is in the test, not in the runtime.
The contract for +initialize is that it is guaranteed to complete before any
other message (by any thread) that does not originate within the +initialise
method itself will be received by the class receiving the +initialize method.
This means that the code in the test case can not possibly pass on any
conforming Objective-C implementation.
It does 'work' with the GCC runtime, because of a long-standing bug where the
GCC runtime doesn't correctly do any serialisation of +initialise so this test
case contains a race condition instead of a deadlock.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?35263>
_______________________________________________
Nachricht geschickt von/durch Savannah
http://savannah.gnu.org/
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Morten Hustveit, 2012/01/07
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization,
Fred Kiefer <=
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Richard Frith-Macdonald, 2012/01/08
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Morten Hustveit, 2012/01/09
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Fred Kiefer, 2012/01/11
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Morten Hustveit, 2012/01/11
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Fred Kiefer, 2012/01/19
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Niels Grewe, 2012/01/19
- [bug #35263] libobjc2 can enter a deadlock during dtable initialization, Richard Frith-Macdonald, 2012/01/19