Commit Graph

167 Commits

Author SHA1 Message Date
Patrick Laflamme
a98b2214e3 On Windows, fixed CRC (out of process mode for Editor) generating an incomplete portable callstack when the crash occurred because a null function pointer was invoked
- When CRC runs out of process, instead of reading the current thread context of the crashed thread, read and use the crash context that was reported during the crash (which is different).
  - Added an optional context parameter to FGenericPlatformStackWalk::CaptureThreadStackBackTrace(), implemented it across all platforms, but only used on Windows.

On Windows, fixed InitStackWalking() and InitStackWalkingForProcess() to reset the process that needs to be walked.
  - CRC, running out of process may run its own process or the Editor process and which ever was walking first ruled out the other.

#jira UE-105006 - [CrashReporter] VCRUNTIME140!7fffce010000 + e390
#rb Johan.Berg
#preflight 15217159

[CL 15319737 by Patrick Laflamme in ue5-main branch]
2021-02-04 14:06:44 -04:00
Marc Audy
cac1fe0019 Merge UE5/Release-Engine-Staging @ CL# 15299266 to UE5/Main
This represents UE4/Main @ CL# 15277572

[CL 15299962 by Marc Audy in ue5-main branch]
2021-02-03 14:57:28 -04:00
Marc Audy
bf80889353 UE5/Release-Engine-Staging to UE5/Main
This represents UE4/Main up to CL# 14958402

[CL 15028197 by Marc Audy in ue5-main branch]
2021-01-08 19:56:07 -04:00
Martin Ridgers
08e6647d50 Added an overload for dumping backtraces to strings that uses an instruction address to condition the callstack as an alternative to a frame-strip count.
Unix-related files are in the changelist because FUnixPlatformStackWalk overrides StackWalkAndDump[Ex]. The compiler won't pick up the overload in FGenericPlatformStackWalk, hence the need to forward for Unix. Coincidentally, the old versions use the context to condition backtraces by program counter. That we can skip out on for these new overloads.

#rb jb
#rnx

[CL 14912279 by Martin Ridgers in ue5-main branch]
2020-12-14 03:36:21 -04:00
Patrick Laflamme
337e356390 Fixed FUnixSystemWideCriticalSection to always honor the timeout parameter passed at construction (because flock() could block indefinitely).
#rb Brandon.Schaefer

[CL 14891122 by Patrick Laflamme in ue5-main branch]
2020-12-09 15:56:30 -04:00
Marc Audy
68150e0be7 Merge UE5/Release-Engine-Staging to UE5/Main @ 14611496
This represents UE4/Main @ 14594913

[CL 14612291 by Marc Audy in ue5-main branch]
2020-10-29 13:38:15 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
Matt Kuhlenschmidt
603a4119c5 Fix HAL/PlatformFileManager.h non-portable casing CIS issues
#rb none

[CL 13214257 by Matt Kuhlenschmidt in ue5-main branch]
2020-05-06 17:58:18 -04:00
louisphilippe seguin
d337bc1b53 Allow CurlHTTPManager to be multithreaded on forked servers
* Can be disabled via -DisableForkedHTTPThread on the commandline

Added FForkedProcessHelper::IsForkedChildProcess() that tells if you are a forked process or not.

#rb Jon.Nabozny, Michael.Kirzinger

#ROBOMERGE-SOURCE: CL 13150443 via CL 13164796 via CL 13164895 via CL 13164946 via CL 13165141
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v688-13145358)

[CL 13165206 by louisphilippe seguin in Main branch]
2020-05-05 00:39:07 -04:00
bart hawthorne
d7c163a80a Change default linux directory permissions to 775 from 755.
#rb arciel.rekman, brandon.schaefer

#ROBOMERGE-OWNER: bart.hawthorne
#ROBOMERGE-AUTHOR: bart.hawthorne
#ROBOMERGE-SOURCE: CL 13006272 via CL 13006366 via CL 13006387 via CL 13006397
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)

[CL 13006398 by bart hawthorne in Main branch]
2020-04-23 09:49:41 -04:00
louisphilippe seguin
2f61f8674d Unix
* Fix FUnixPlatformMemory::GetStats() that always returned 0 when memory was over 10.24gigs

#rb brandon.schaefer

#ROBOMERGE-SOURCE: CL 12666533 via CL 12666534 via CL 12666535 via CL 12666536 via CL 12666539 via CL 12666541
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12666544 by louisphilippe seguin in Main branch]
2020-04-07 18:56:26 -04:00
kenzo terelst
5b7560be1b Editgrate fixes from Dev-Rendering
- Add static cleanup function for platform specific files which are used by the CrashContext
- Move CrashVideo.avi to platform specific cleanup function
- ReportGPUCrash on Windows raised exception via Try/Catch because function can be called when the guarded entry is not set

#rb Johan.Berg

#ROBOMERGE-SOURCE: CL 12508002 via CL 12508003 via CL 12508004
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v673-12478461)

[CL 12508009 by kenzo terelst in Main branch]
2020-04-01 12:41:12 -04:00
louisphilippe seguin
dd6fcdb609 Removed delta mem comparisons for master process memory between each fork since was confirmed to always be 0.
#rb trivial

#ROBOMERGE-SOURCE: CL 12496172 via CL 12496173 via CL 12496174 via CL 12496175
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v673-12478461)

[CL 12496179 by louisphilippe seguin in Main branch]
2020-03-31 09:26:41 -04:00
louisphilippe seguin
17a5d4dda3 Fix overflow in fork memory logs when mem delta is negative.
#rb [at]Brian.Bekich

#ROBOMERGE-SOURCE: CL 12473962 via CL 12473970 via CL 12473975 via CL 12473982
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v672-12450963)

[CL 12473988 by louisphilippe seguin in Main branch]
2020-03-27 15:40:44 -04:00
louisphilippe seguin
8a3a9f1ea5 Fix linux compil error due to typo in Log
#rb trivial

#ROBOMERGE-SOURCE: CL 12454886 via CL 12454888 via CL 12459531 via CL 12459634
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v672-12450963)

[CL 12459693 by louisphilippe seguin in Main branch]
2020-03-26 17:04:33 -04:00
louisphilippe seguin
821f15f855 Log memory stats on a master process before he forks a new child process
#rb Brian.Bekich

#ROBOMERGE-SOURCE: CL 12453913 via CL 12453917 via CL 12459201 via CL 12459397
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v672-12450963)

[CL 12459492 by louisphilippe seguin in Main branch]
2020-03-26 17:02:22 -04:00
arciel rekman
0c9daef67e Remove obsolete workaround and comment (secure_getenv).
#jira none
#rb none
[FYI] Brandon.Schaefer, Michael.Sartain

#ROBOMERGE-SOURCE: CL 12394006 in //UE4/Release-4.25/... via CL 12394014
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Release-Engine-Staging) (v671-12333473)

[CL 12403488 by arciel rekman in Release-Engine-Staging branch]
2020-03-25 10:30:53 -04:00
Arciel Rekman
6044d7f7a7 Remove obsolete workaround and comment (secure_getenv).
#jira none
#rb none
#fyi Brandon.Schaefer, Michael.Sartain

[CL 12394006 by Arciel Rekman in 4.25 branch]
2020-03-24 17:27:27 -04:00
jamie dale
d9273b52a8 Allow Truncate to retry if interrupted
Ensure we're using the 64-bit version of Truncate so it can deal with large files correctly.

#jira UE-89826
#rb Stefan.Boberg

#ROBOMERGE-SOURCE: CL 12094830 in //UE4/Release-4.25/... via CL 12094841
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v657-12064184)

[CL 12094854 by jamie dale in Main branch]
2020-03-09 17:05:42 -04:00
Jamie Dale
a0bb84763f Allow Truncate to retry if interrupted
Ensure we're using the 64-bit version of Truncate so it can deal with large files correctly.

#jira UE-89826
#rb Stefan.Boberg

[CL 12094830 by Jamie Dale in 4.25 branch]
2020-03-09 17:04:51 -04:00
Brandon Schaefer
5cb59aabe7 Override GetPortableCallstack to avoid 1MB allocations in our signal handler
#jira UE-89798
[at]Michael.Sartain, [at]Arciel.Rekman
#rb Michael.Sartain

#ROBOMERGE-OWNER: Brandon.Schaefer
#ROBOMERGE-AUTHOR: brandon.schaefer
#ROBOMERGE-SOURCE: CL 12012057 in //UE4/Release-4.25/... via CL 12012076
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 12012485 by Brandon Schaefer in Main branch]
2020-03-06 14:44:03 -05:00
Brandon Schaefer
7047925c50 Override GetPortableCallstack to avoid 1MB allocations in our signal handler
#jira UE-89798
#review-11969828 @Michael.Sartain, @Arciel.Rekman
#rb Michael.Sartain

[CL 12012057 by Brandon Schaefer in 4.25 branch]
2020-03-06 14:39:14 -05:00
brandon schaefer
d11b88c8c9 Batch writing ini files for Unix
#jira UE-84939
#rb Seabstian.Nordgren
[at]Josh.Adams, [at]Seabstien.Nordgren

#ROBOMERGE-SOURCE: CL 12000609 in //UE4/Release-4.25/... via CL 12000880
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 12001061 by brandon schaefer in Main branch]
2020-03-06 12:23:58 -05:00
Brandon Schaefer
1e4fd036c3 Batch writing ini files for Unix
#jira UE-84939
#rb Seabstian.Nordgren
#review-11937708 @Josh.Adams, @Seabstien.Nordgren

[CL 12000609 by Brandon Schaefer in 4.25 branch]
2020-03-06 12:10:43 -05:00