[opensource-dev] Review Request: STORM-1546 Crash in LLSecAPIBasicHandler::getCertificateStore

David Parks davep at lindenlab.com
Tue Aug 9 13:45:56 PDT 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://codereview.secondlife.com/r/435/#review960
-----------------------------------------------------------

Ship it!


Looks good -- make sure to ask QA to do a performance A/B test to make sure this doesn't introduce frame stalls.

- David


On Aug. 9, 2011, 12:55 p.m., Vadim ProductEngine wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://codereview.secondlife.com/r/435/
> -----------------------------------------------------------
> 
> (Updated Aug. 9, 2011, 12:55 p.m.)
> 
> 
> Review request for Viewer and David Parks.
> 
> 
> Summary
> -------
> 
> Fixed a crash caused by a race condition in LLRefCount.
> 
> Reason:
> secapiSSLCertVerifyCallback() seems to be called simultaneously by multiple threads,
> which causes a race condition in LLRefCount::ref/unref() methods.
> The reference counter in LLSecAPIBasicHandler::mStore goes to zero, and the object gets destroyed.
> 
> Fix:
> Derive LLCertificateStore from LLThreadSafeRefCount instead of LLRefCount,
> which should fix the race condition.
> 
> Note:
> The LLThreadSafeRefCount constructor is private, so we have to wrap instances of the class with LLPointer.
> 
> 
> This addresses bug STORM-1546.
>     http://jira.secondlife.com/browse/STORM-1546
> 
> 
> Diffs
> -----
> 
>   indra/newview/llsecapi.h 8f15e5a13e8f 
>   indra/newview/llsechandler_basic.cpp 8f15e5a13e8f 
> 
> Diff: http://codereview.secondlife.com/r/435/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Vadim
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.secondlife.com/pipermail/opensource-dev/attachments/20110809/5cf7dcb0/attachment.htm 


More information about the opensource-dev mailing list