On 01/29/10 12:45 PM, [email protected] wrote:
Joanie found a problem with my last incarnation of this fix.  The result
was a deadlock.  I've tried to avoid this by changing the way the locks
are acquired.  In particular, the __del__ method checks to see if it
must acquire the lock, or already has it.  This is a bit kludgey, but
it's a corner-case of a corner-case.  I've also added a bunch of
asserts, updated the faux lock DummyLock, and switched the transport to
use NRLock, which will result in a traceback instead of a deadlock if
this problem ever happens again.

        http://cr.opensolaris.org/~johansen/webrev-14240-3/

So the only thing that comes to mind is that with the _is_owned() check in __del__, that means that the logic is assuming that the same thread that created the object will also garbage collect it. Is that safe to assume? (Asking; don't know.)

Otherwise, seems fine.

--
Shawn Walker
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to