Skip to content
Snippets Groups Projects
  1. Jan 29, 2018
  2. Aug 08, 2017
  3. Apr 22, 2016
  4. Nov 10, 2015
  5. Nov 20, 2014
  6. Nov 19, 2014
  7. Jan 30, 2014
  8. Dec 10, 2013
  9. Dec 06, 2013
  10. Oct 11, 2013
  11. Aug 09, 2013
  12. Aug 06, 2013
    • Monty Brandenberg's avatar
      SH-4411 Thread/mutex rework between main and worker thread · 0d932473
      Monty Brandenberg authored
      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.
      0d932473
  13. Jul 18, 2013
  14. Jul 15, 2013
  15. Jul 01, 2013
  16. Jun 30, 2013
  17. Jun 22, 2013
  18. May 29, 2013
  19. Apr 17, 2013
  20. Mar 29, 2013
  21. Feb 28, 2013
  22. Dec 05, 2012
  23. Nov 20, 2012
  24. Oct 10, 2012
  25. Oct 03, 2012
  26. Oct 02, 2012
  27. Oct 01, 2012
  28. Sep 28, 2012
  29. Sep 26, 2012
  30. Sep 24, 2012
  31. Sep 21, 2012
  32. Jun 14, 2012
    • Monty Brandenberg's avatar
      LLMutex recursive lock, global & per-request tracing, simple GET request,... · b08125a5
      Monty Brandenberg authored
      LLMutex recursive lock, global & per-request tracing, simple GET request, 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.
      b08125a5
  33. Jan 20, 2012
  34. Oct 14, 2011
  35. Jul 22, 2011
Loading