From 12cb787f314b690e018d4b12ac54e08570b3b677 Mon Sep 17 00:00:00 2001 From: Rye Mutt Date: Thu, 8 Aug 2024 11:57:26 -0400 Subject: Update libexpat to 2.6.2 and libapr 1.7.4 (#2214) --- indra/llcorehttp/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) (limited to 'indra/llcorehttp') diff --git a/indra/llcorehttp/CMakeLists.txt b/indra/llcorehttp/CMakeLists.txt index f7a6669825..d388883575 100644 --- a/indra/llcorehttp/CMakeLists.txt +++ b/indra/llcorehttp/CMakeLists.txt @@ -155,8 +155,6 @@ if (DARWIN) # for portability. This operation is Darwin-specific. We can count on the # 'cp' command. set(copy_dylibs - libapr-1.0.dylib - libaprutil-1.0.dylib libnghttp2*.dylib ${EXPAT_COPY} ) -- cgit v1.2.3 From f982463488a35b58b86d5d76309055416eb9eaec Mon Sep 17 00:00:00 2001 From: Rye Mutt Date: Mon, 12 Aug 2024 00:30:42 -0400 Subject: Update zlib-ng libxml2 libpng freetype minizip-ng boost collada-dom tinygltf packages (#2250) Rebuild expat, apr, meshoptimizer, ogg_vorbis, libjpeg-turbo for symbol fixes --- indra/llcorehttp/CMakeLists.txt | 37 ------------------------------------- 1 file changed, 37 deletions(-) (limited to 'indra/llcorehttp') diff --git a/indra/llcorehttp/CMakeLists.txt b/indra/llcorehttp/CMakeLists.txt index d388883575..05b788a433 100644 --- a/indra/llcorehttp/CMakeLists.txt +++ b/indra/llcorehttp/CMakeLists.txt @@ -132,43 +132,6 @@ if (LL_TESTS AND LLCOREHTTP_TESTS) "${CMAKE_CURRENT_SOURCE_DIR}/tests/test_llcorehttp_peer.py" ) -if (DARWIN) - # Path inside the app bundle where we'll need to copy libraries - set(LL_TEST_DESTINATION_DIR - ${CMAKE_BINARY_DIR}/sharedlibs/$,,../>Resources - ) - - # Create the Contents/Resources directory - add_custom_command( - TARGET INTEGRATION_TEST_llcorehttp PRE_BUILD - COMMAND ${CMAKE_COMMAND} - ARGS - -E - make_directory - ${LL_TEST_DESTINATION_DIR} - COMMENT "Creating Resources directory in app bundle." - ) - - # Copy the required libraries to the package app. We used to use a sequence - # of '${CMAKE_COMMAND} -E copy' commands, but 'cmake -E copy' does only a - # single file at a time: it doesn't understand wildcards. 'cmake -E copy' is - # for portability. This operation is Darwin-specific. We can count on the - # 'cp' command. - set(copy_dylibs - libnghttp2*.dylib - ${EXPAT_COPY} - ) - - add_custom_command(TARGET INTEGRATION_TEST_llcorehttp PRE_BUILD - WORKING_DIRECTORY "${AUTOBUILD_INSTALL_DIR}/lib/release" - COMMAND cp -v - ${copy_dylibs} - ${LL_TEST_DESTINATION_DIR} - DEPENDS ${copy_dylibs} - ) - -endif (DARWIN) - # # Example Programs # -- cgit v1.2.3 From ad8dc13150b640ae9613e1edd8cc8c2c72b1e6b2 Mon Sep 17 00:00:00 2001 From: Rye Mutt Date: Tue, 13 Aug 2024 18:24:53 -0400 Subject: Reduce thread contention on HTTPStats singleton access via simpleton. The main thread and http thread had significant contention in asset-fetch heavy scenarios that could result in main thread and http thread stalls when the http thread was accessing the HTTPStats singleton and the master singleton dependency list had to be queried. The HTTP thread is the primary user of HTTPStats with the main thread only calling into it during shut down to query the stats for the session. --- indra/llcorehttp/httprequest.cpp | 2 ++ indra/llcorehttp/httpstats.h | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'indra/llcorehttp') diff --git a/indra/llcorehttp/httprequest.cpp b/indra/llcorehttp/httprequest.cpp index 216d407deb..2aaf71f8a4 100644 --- a/indra/llcorehttp/httprequest.cpp +++ b/indra/llcorehttp/httprequest.cpp @@ -489,6 +489,7 @@ HttpStatus HttpRequest::createService() HttpRequestQueue::init(); HttpRequestQueue * rq = HttpRequestQueue::instanceOf(); HttpService::init(rq); + HTTPStats::createInstance(); has_inited = true; } @@ -502,6 +503,7 @@ HttpStatus HttpRequest::destroyService() if (has_inited) { + HTTPStats::deleteSingleton(); HttpService::term(); HttpRequestQueue::term(); has_inited = false; diff --git a/indra/llcorehttp/httpstats.h b/indra/llcorehttp/httpstats.h index f12e59da0c..5c0f26d34e 100644 --- a/indra/llcorehttp/httpstats.h +++ b/indra/llcorehttp/httpstats.h @@ -35,12 +35,12 @@ namespace LLCore { - class HTTPStats : public LLSingleton + class HTTPStats final : public LLSimpleton { - LLSINGLETON(HTTPStats); - virtual ~HTTPStats(); - public: + HTTPStats(); + ~HTTPStats(); + void resetStats(); typedef LLStatsAccumulator StatsAccumulator; -- cgit v1.2.3