[ 
https://issues.apache.org/jira/browse/LOGCXX-317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thorsten Schöning resolved LOGCXX-317.
--------------------------------------

    Resolution: Fixed

I applied the patch because regarding LOGCXX-359 the former mentioned change 
doesn't resolve the issue, wheres the patch of the reporter did for him.

> Log4cxx triggers locking inversion, which can result in a deadlock
> ------------------------------------------------------------------
>
>                 Key: LOGCXX-317
>                 URL: https://issues.apache.org/jira/browse/LOGCXX-317
>             Project: Log4cxx
>          Issue Type: Bug
>    Affects Versions: 0.10.0
>         Environment: Operating System: Windows 2003 R2
> Compiler: Visual Studio 2005 SP1
> log4cxx 0.10.0 was compiled as a DLL.
> Note: the reported issue is independent of the above data.
>            Reporter: Bart Van Assche
>            Assignee: Curt Arnold
>         Attachments: call-stacks.txt, 
> helgrind-locking-order-violation-report.txt, 
> locking-order-violation-example.cpp, locking-order-violation-fix.patch
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Calling log4cxx::configureAndWatch() results in Logger::mutex being locked 
> first, and Hierarchy::mutex being locked nested.
> Calling log4cxx::getLogger() results in Hierarchy::mutex being locked first, 
> and Logger::mutex being locked nested.
> See also the attachment for the full call stacks.
> Such behavior is called locking inversion and can result in a sporadic 
> deadlock.
> This issue has been found via Intel Thread Checker.
> Note: there are also other tools that can detect locking inversion, e.g. the 
> Helgrind tool included with the Valgrind suite.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to