* Added cvar fork.ParentSleepDurationInSec to give ability to configure the time parent process sleeps when it has no signals to execute
* Added cvar fork.LogMemoryStatsWhenForking to control the memory stats log before every fork (enabled by default)
* Added LogFork category used by fork related logs (previously LogHal)
* Fixed signal timestamp in logs
#jira UE-215592
#rb Brandon.Schaefer
[CL 34073292 by louisphilippe seguin in ue5-main branch]
* Added so code identifying module as UE module on unix tests the old path too.. in case there are modules out there that are not using our macros (highly unlikely because they need our operator new/delete etc)
[CL 33735124 by henrik karlsson in ue5-main branch]
If a module depends on Core and does not want the overloads it needs to add the private define SUPPRESS_PER_MODULE_INLINE_FILE or set PER_MODULE_INLINE_FILE to point to a different file
[CL 33709297 by henrik karlsson in ue5-main branch]
In order to properly separate crashes that happens during development versus crashes that occurr in shipped titles we need to use the editor version of the crash reporter when appropriate.
#rb calvin.zheng
#jira UE-206087, UE-205533
[CL 31439621 by johan berg in ue5-main branch]
- IOStore ucas handles now get freed and reopened as needed when file handle pressure is too great.
- FRegisteredFileHandle now refcounts read requests so it can handle multiple read requests with the same handle at the same time.
- Failure to reopen files is now passed back up as file read failures
- Add some additional logging for FFileHelper errors
- Add error logging explicitly for runningout of PS5 file handles
- Make file handle casts use static_cast
- PS5 file handle now returns -1 for size if fstat fails, this matches windows behavior
- FAPRHandleCache now ignores files outside of /app0. This prevents file churn in /download0 from bloating it.
[REVIEW]
[CL 29846643 by justin marcus in ue5-main branch]
This also fixes the old smaps parser to not incorrectly bail before EOF if fewer bytes were provided than asked for as that's an allowable condition.
#ushell-cherrypick of 29606161 by Dan.Thompson
#ushell-cherrypick of 29607764 by Dan.Thompson
#rb arciel.rekman
[CL 29722985 by dan thompson in ue5-main branch]
(not backing out the fixes to structured logging itself, only its usage)
[FYI] sebastian.schoner
Original CL Desc
-----------------------------------------------------------------
Use structured logging for OutOfMemory messages
Structured logging allows to surface information contained in log lines more easily for automated processes. Out of memory errors are a common thing we'd like to detect and the current detection code has already been broken once.
This CL also contains a change to the structured log for fatal errors. Those were erroneously noted as assertion failures due to an unintended call to Debug::AssertFailed originating via copy-paste from FMsg::LogfImpl. Removing this call ensures that the new log matches the old behavior from unstructured logging (which I have manually verified).
#rb devin.doucette
[CL 29710620 by sebastian schoner in ue5-main branch]
Notes: Pretty low risk, one line change. Should only have impact in memory sharing on Linux servers, no client--side effect. This change effectively restores the mergeable tagging to these types of allocations that was inadvertently lost when Gil refactored memory allocations. Should help Juno.
[REVIEW] [at]zack.neyland
#jira UE-199974
#rb [at]Brandon.Schaefer, [at]Arciel.Rekman, [at]Zack.Neyland
#rnx
#localization none
#tests local editor to make sure we don't crash
#preferred_allowlister jeanfrancois.stamour
[CL 29660772 by james singer in ue5-main branch]
Structured logging allows to surface information contained in log lines more easily for automated processes. Out of memory errors are a common thing we'd like to detect and the current detection code has already been broken once.
This CL also contains a change to the structured log for fatal errors. Those were erroneously noted as assertion failures due to an unintended call to Debug::AssertFailed originating via copy-paste from FMsg::LogfImpl. Removing this call ensures that the new log matches the old behavior from unstructured logging (which I have manually verified).
#rb devin.doucette
[CL 29591079 by sebastian schoner in ue5-main branch]
[Backout] - CL27745134
[FYI] stan.hormell
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL27731288 - CIS / Build Errors
[FYI] Josh.Adams
Original CL Desc
-----------------------------------------------------------------
- Deprecated GetSectionPrivate and FindOrAddSection, and accessors in FConfigFile that could return a non-const FConfigSection (this is so we can track modifications to config values)
- Added AddToSection, RemoveKeyFromSection, etc to replace directly accessing a FConfigSection
- Fixed up Epic code for the deprecations (at least the majority, some projects that aren't built by Horde presubmit may have some that we will address going forward)
#jira UE-194955
#rb david.harvey and various others
[CL 27923017 by josh adams in ue5-main branch]