summaryrefslogtreecommitdiff
path: root/indra/llcommon/llthread.cpp
AgeCommit message (Collapse)Author
2013-10-04Merge. Pull in viewer-release after 3.6.7 release.Monty Brandenberg
2013-08-06SH-4411 Thread/mutex rework between main and worker threadMonty Brandenberg
Have the ::notifyLoadedMeshes() method doing correct locking and stall avoidance at the same time. This method now does lazy mutex lock acquisition (trylock()) and if it fails on either, it gives up and comes back later. Capture the maximum number of sequential failures and report this at the end of the run in the log. (So far, with big mesh regions, I've only seen 1s and 2s.) Locking/mutex requirements sorted in other locations as well. LLMutex gets trylock() method as well as new LLMutexTrylock scoped locking class. Clean up some documentation, more to do.
2013-05-09Merge downstream code and viewer-betasimon
2013-04-17Some minor cleanups while hunting crashes. Reviewed by Kellysimon
2013-03-29Update Mac and Windows breakpad builds to latestGraham Madarasz
2013-02-28Attempt at a faster ThreadSafeRefCount classGraham Madarasz (Graham)
2012-11-07Merge. Refresh DRTVWR-209 with 3.4.2-beta1 code.Monty Brandenberg
Two fairly simple conflicts: dead stats sending code in the texture fetch code (new llcorehttp library) and the cleanup code in llappviewer was moved around in 3.4.x.
2012-10-03Fix non-thread-safe refcounting of LLHTTPClient::Responder and fix ↵Dave Parks
out-of-order deletion of LLTextureFetch on shutdown
2012-06-14LLMutex recursive lock, global & per-request tracing, simple GET request, ↵Monty Brandenberg
LLProxy support, HttpOptions starting to work, HTTP resource waiting fixed. Non-LLThread-based threads need to do some registration or LLMutex locks taken out in these threads will not work as expected (SH-3154). We'll get a better solution later, this fixes some things for now. Tracing of operations now supported. Global and per-request (via HttpOptions) tracing levels of [0..3]. The 2 and 3 levels use libcurl's VERBOSE mode combined with CURLOPT_DEBUGFUNCTION to stream high levels of detail into the log. *Very* laggy but useful. Simple GET request supported (no Range: header). Really just a degenrate case of a ranged get but supplied an API anyway. Global option to use the LLProxy interface to setup CURL handles for either socks5 or http proxy usage. This isn't really the most encapsulated way to do this but a better solution will have to come later. The wantHeaders and tracing options are now supported in HttpOptions giving per-request controls. Big refactoring of the HTTP resource waiter in lltexturefetch. What I was doing before wasn't correct. Instead, I'm implementing the resource wait after the Semaphore model (though not using system semaphores). So instead of having a sequence like: SEND_HTTP_REQ -> WAIT_HTTP_RESOURCE -> SEND_HTTP_REQ, we now do WAIT_HTTP_RESOURCE -> WAIT_HTTP_RESOURCE2 (actual wait) -> SEND_HTTP_REQ. Works well but the prioritized filling of the corehttp library needs some performance work later.
2012-01-20fix for SH-2823 and SH-2824: LLCurl crash inside LLBufferArray::countAfter() ↵Xiaohong Bao
and LLBufferArray::copyIntoBuffers
2011-07-22SH-2031 Cleanup from threaded curl implementation (remove errors/loops on ↵Dave Parks
shutdown).
2011-02-09SH-920 Wait for threads to shut down before deleting them -- also, fix some ↵Dave Parks
assertions that were encouraging people to comment out the destruction of LLSignal.
2010-12-21Automated merge from mesh-developmentLoren Shih
2010-12-17SH-682 WIP: allow DEBUG_FAST_TIMER_THREADS to work when enabledBrad Payne (Vir Linden)
2010-12-01Automated merge up from viewer-developmentLoren Shih
2010-11-23[mq]: thread_state_fixAndrew A. de Laix
2010-11-19Don't use llwarns/llinfos from a background thread.Dave Parks
2010-11-11hacking mac updater to install from local dmgAndrew A. de Laix
2010-11-09Fix crash if thread is manually shut down before it is destroyed.Andrew A. de Laix
2010-11-02Make sure mutex is locked before waiting on a signal.Dave Parks
Reviewed by Nyx.
2010-10-13correct licenses (fix problem with license change merge)Oz Linden
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-09-02Fix for crash when loading models (Don't hit UI from the main thread). ↵Dave Parks
Added asserts to LLFastTimer to verify main thread use only.
2009-12-21Fix for OSX hating thread local state (hopefully).Dave Parks
2009-12-11HTTP Mesh fetch FTW.. still bustedDave Parks
2009-11-25Merge of viewer 2Palmer Truelson
2009-11-23Added some threading debugging code. Should catch any recursive mutex locks ↵Steve Bennetts
in non Release builds.
2009-11-02Sync up with render-pipeline-7 ignore-dead-branchDavid Parks
2009-02-18Merge of QAR-1267 to trunk. This was a combo merge of QAR-1175 ↵Brad Kittenbrink
(maint-render-9) and QAR-1236 (dll-msvcrt-2) svn merge -r 109838:112264 svn+ssh://svn.lindenlab.com/svn/linden/branches/maint-render/maint-render-9-merge-r109833
2009-01-08Result of svn merge -r107256:107258 ↵Aaron Brashears
svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165
2008-09-12QAR-855 Viewer 1.21 RC 2Steven Bennetts
merge viewer_1-21 94770-96059 -> release
2008-09-05svn merge -r95288:95907 ↵Andrew Meadows
svn+ssh://svn.lindenlab.com/svn/linden/qa/maint-server/qar-841 this is a combined mergeback of the following branches as per QAR-841: maint-server/maint-server-1 (absorbed by maint-server-2) maint-server/maint-server-2 maint-server/maint-server-3 havok4/havok4-8 havok4/havok4-9 yes dataserver-is-deprecated
2008-06-02svn merge -r88066:88786 ↵Bryan O'Sullivan
svn+ssh://svn.lindenlab.com/svn/linden/branches/cmake-9-merge dataserver-is-deprecated for-fucks-sake-whats-with-these-commit-markers
2008-02-28svn merge -r 80357:80990 ↵Josh Bell
svn+ssh://svn.lindenlab.com/svn/linden/branches/Branch_1-19-1-Server --> release Merge patches from 1.19.1 Server branch: * QAR-293 Fix for hardcoded TTLs in web dataservices * DEV-10826 fix for busted binary and notation parse if handed an unlimited parse size * Bounce apache2 processes before starting backbone/dataserver/simulator * Changing web-ds TTL in a way that any query that has 0 < ttl <=60 will have ttl = 61. * Partial reversion of multiagent-chat to 1.19.0 to address fast memory leak * Fixed minor, non user facing bug in multiagentchat * set-classified-stats: Rewrote to use new MDB2 query reformatting syntax * Fixed possible bad conversion of vivox data * DEV-550, caching changes to DirClassifieds Query * QAR-240 (DEV-8488) Prevent residents from purging stuff that isn't trash on the backend * More mem leak fixes for multiagent-chat * QAR-274 Fetch inventory descendents over TCP (via HTTP cap) instead of UDP * DEV-10151: Sometimes group IMs appear to be person to person IMs * QAR-321 Changes to crash_reporter * DEV-11004 Speed up people search query using FORCE INDEX (PRIMARY) on the username table if the first-name query fragment is >= 3 chars * DEV-11004 Speed up people search query using FORCE INDEX (PRIMARY). Web service version of this, must use two named queries because we need to change the query based on input string length.
2007-10-04Result of svn merge -r71162:71205 ↵Aaron Brashears
svn+ssh://svn/svn/linden/branches/new-license into release. only changes files which are not deployed or the comments section of code.
2007-09-14EFFECTIVE MERGE: svn merge -r 68118:68999 ↵Don Kjer
svn+ssh://svn/svn/linden/branches/maintenance ACTUAL MERGE: svn merge -r 69685:69687 svn+ssh://svn/svn/linden/branches/release-r69649-maintenance-sync EQUIVALENT TO: svn merge -r 68118:69663 svn+ssh://svn/svn/linden/branches/maintenance-r68999
2007-07-20svn merge -r 64548:64837 svn+ssh://svn/svn/linden/branches/maintenance into ↵Don Kjer
release * WARNING *: maintenance r64837 is not the last rev to use in the next merge. use r65269
2007-03-02merge release@58699 beta-1-14-0@58707 -> releaseSteven Bennetts
2007-01-02Print done when done.James Cook