From 9978227915a3585784384e3f4328ce553023dbe5 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Sun, 26 Mar 2023 16:21:49 +0200 Subject: [PATCH] Lock filesystem 'read' logs behind a cvar Locked behind cvar as loading a single map already causes 500kb 'read' logs. --- r5dev/filesystem/basefilesystem.cpp | 11 ++++++++++- r5dev/tier1/IConVar.cpp | 3 ++- r5dev/tier1/cvar.cpp | 3 ++- r5dev/tier1/cvar.h | 3 ++- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/r5dev/filesystem/basefilesystem.cpp b/r5dev/filesystem/basefilesystem.cpp index 1dee912f..72d5e55c 100644 --- a/r5dev/filesystem/basefilesystem.cpp +++ b/r5dev/filesystem/basefilesystem.cpp @@ -15,9 +15,18 @@ //--------------------------------------------------------------------------------- void CBaseFileSystem::Warning(CBaseFileSystem* pFileSystem, FileWarningLevel_t level, const char* pFmt, ...) { + if (level >= FileWarningLevel_t::FILESYSTEM_WARNING_REPORTALLACCESSES) + { + // Logging reads is very verbose! Explicitly toggle.. + if (!fs_showAllReads || !fs_showAllReads->GetBool()) + { + return; + } + } + va_list args; va_start(args, pFmt); - CoreMsgV(LogType_t::LOG_WARNING, static_cast(fs_show_warnings->GetInt()), eDLL_T::FS, "filesystem", pFmt, args); + CoreMsgV(LogType_t::LOG_WARNING, static_cast(fs_showWarnings->GetInt()), eDLL_T::FS, "filesystem", pFmt, args); va_end(args); } diff --git a/r5dev/tier1/IConVar.cpp b/r5dev/tier1/IConVar.cpp index c2e38ba4..a43818ac 100644 --- a/r5dev/tier1/IConVar.cpp +++ b/r5dev/tier1/IConVar.cpp @@ -200,7 +200,7 @@ void ConVar::Init(void) #endif // !DEDICATED //------------------------------------------------------------------------- // FILESYSTEM | - fs_show_warnings = ConVar::Create("fs_show_warnings" , "0", FCVAR_DEVELOPMENTONLY, "Logs the FileSystem warnings to the console, filtered by 'fs_warning_level' ( !slower! ).", true, 0.f, true, 2.f, nullptr, "1 = log to console. 2 = 1 + log to notify."); + fs_showWarnings = ConVar::Create("fs_showWarnings" , "0", FCVAR_DEVELOPMENTONLY, "Logs the FileSystem warnings to the console, filtered by 'fs_warning_level' ( !slower! ).", true, 0.f, true, 2.f, nullptr, "1 = log to console. 2 = 1 + log to notify."); fs_packedstore_entryblock_stats = ConVar::Create("fs_packedstore_entryblock_stats" , "0", FCVAR_DEVELOPMENTONLY, "Logs the stats of each file entry in the VPK during decompression ( !slower! ).", false, 0.f, false, 0.f, nullptr, nullptr); fs_packedstore_workspace = ConVar::Create("fs_packedstore_workspace" , "platform/ship/", FCVAR_DEVELOPMENTONLY, "Determines the current VPK workspace.", false, 0.f, false, 0.f, nullptr, nullptr); fs_packedstore_compression_level = ConVar::Create("fs_packedstore_compression_level", "default", FCVAR_DEVELOPMENTONLY, "Determines the VPK compression level.", false, 0.f, false, 0.f, nullptr, "fastest faster default better uber"); @@ -257,6 +257,7 @@ void ConVar::InitShipped(void) #endif // !CLIENT_DLL developer = g_pCVar->FindVar("developer"); fps_max = g_pCVar->FindVar("fps_max"); + fs_showAllReads = g_pCVar->FindVar("fs_showAllReads"); #ifndef DEDICATED cl_threaded_bone_setup = g_pCVar->FindVar("cl_threaded_bone_setup"); #endif // !DEDICATED diff --git a/r5dev/tier1/cvar.cpp b/r5dev/tier1/cvar.cpp index 437006a3..32a29164 100644 --- a/r5dev/tier1/cvar.cpp +++ b/r5dev/tier1/cvar.cpp @@ -177,7 +177,8 @@ ConVar* origin_disconnectWhenOffline = nullptr; #endif // !DEDICATED //----------------------------------------------------------------------------- // FILESYSTEM | -ConVar* fs_show_warnings = nullptr; +ConVar* fs_showWarnings = nullptr; +ConVar* fs_showAllReads = nullptr; ConVar* fs_packedstore_entryblock_stats = nullptr; ConVar* fs_packedstore_workspace = nullptr; ConVar* fs_packedstore_compression_level = nullptr; diff --git a/r5dev/tier1/cvar.h b/r5dev/tier1/cvar.h index 6e4db511..396f6363 100644 --- a/r5dev/tier1/cvar.h +++ b/r5dev/tier1/cvar.h @@ -173,7 +173,8 @@ extern ConVar* origin_disconnectWhenOffline; #endif // !DEDICATED //------------------------------------------------------------------------- // FILESYSTEM | -extern ConVar* fs_show_warnings; +extern ConVar* fs_showWarnings; +extern ConVar* fs_showAllReads; extern ConVar* fs_packedstore_entryblock_stats; extern ConVar* fs_packedstore_workspace; extern ConVar* fs_packedstore_compression_level;