Commit Graph

112 Commits

Author SHA1 Message Date
Bryan sefcik
b4a6e947d8 Ran IWYU on Public headers under Engine/Source/Runtime/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted.  Nothing is removed.

#ushell-cherrypick of 21065896 by bryan.sefcik
#preflight 62d4b1a5a6141b6adfb0c892
#jira

#ROBOMERGE-OWNER: Bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21150156 via CL 21151754 via CL 21154719
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
#ROBOMERGE-CONFLICT from-shelf

[CL 21181076 by Bryan sefcik in ue5-main branch]
2022-07-20 11:31:36 -04:00
bryan sefcik
b509beb314 Added a few IWYU pragma comments.
#preflight 62ce5231b90bf53969409839

[CL 21067982 by bryan sefcik in ue5-main branch]
2022-07-13 01:25:24 -04:00
bryan sefcik
5774b4842a Added more IWYU pragmas.
#preflight 62c860d0b04c766648963c4f

[CL 21009868 by bryan sefcik in ue5-main branch]
2022-07-08 13:11:06 -04:00
bryan sefcik
1d773c7d68 Added a few IWYU pragmas.
#preflight 62c8389f7e606620fd5bb338

[CL 21006651 by bryan sefcik in ue5-main branch]
2022-07-08 10:16:40 -04:00
bryan sefcik
746b7df074 Same as CL 20991367:
Updated Core code to not use CoreMinimal.h when possible.
Core public headers still will contain CoreMinimal.h if any included it before my IWYU changes.
#preflight 62c74ed0324817d81488b7ee

[CL 20993420 by bryan sefcik in ue5-main branch]
2022-07-07 17:41:31 -04:00
bryan sefcik
a9cc65bca4 Updated Core code to not use CoreMinimal.h when possible.
Core public headers still will contain CoreMinimal.h if any included it before my IWYU changes.
#preflight 62c73594756222ced4e48707

[CL 20991367 by bryan sefcik in ue5-main branch]
2022-07-07 16:02:19 -04:00
bryan sefcik
0f06d550e6 Fixed some issues found when running includetool.
#preflight 62c72fe82823f28cf2273112

[CL 20990373 by bryan sefcik in ue5-main branch]
2022-07-07 15:29:27 -04:00
bryan sefcik
67b8a4e636 Fixed compile issue.
#preflight 62c72b04702597cc87625d1a

[CL 20989797 by bryan sefcik in ue5-main branch]
2022-07-07 15:09:55 -04:00
bryan sefcik
9905eb52bb Pass 2 on running IWYU on Core.
Things to note regarding this pass:
* No includes are currently being removed from public headers.
* Any private file that has a #if is currently not being updated.
#preflight 62c703bbd13fac04f11da948

[CL 20985655 by bryan sefcik in ue5-main branch]
2022-07-07 12:30:11 -04:00
geoff evans
1981b2f5f3 StallDetector support for Linux
### Features

This change enables the StallDetector watchdog in Editor to submit reports to crashreporter about threads violating instrumented deadlines in the source code. This feature was available prior on Windows, and this change adds Linux support.

### Notes

New APIs:
ReportStall()
CaptureThreadPortableCallStack()

Many APIs are updated from purely "Ensure" naming to more general naming. Stalls are more like Ensures than crashes, and so the appropriate renames to make the code readable and clear have been made. In some places Ensure is replaced with the clearer: Continuable Event nomenclature.

### Testing

I synthesized an ensure on Linux, and did the same for a stall. I then compared crash report XML file to make sure they contain accurate data in the callstack, portable callstack, and other fields in the report. I also noted that the stall information was showing as expected in the crash reporter.

#rb brandon.schaefer, francis.hurteau
#jira UETOOL-3336
#preflight 625e20d2804460ab0fea3277

[CL 19911608 by geoff evans in ue5-main branch]
2022-04-25 19:19:04 -04:00
robert seiver
98e1b3a69e Implement OpenMapped for Linux inside of UnixPlatformFile
#jira UE-147332
#rb Brandon.Schaefer
#fyi @James.Singer, @Johan.Torp
#preflight 62587d63946114248dc178b2

[CL 19762042 by robert seiver in ue5-main branch]
2022-04-14 16:03:05 -04:00
alex koumandarakis
c0f3b15a82 #8402 : PR : Add support for using poll instead of select in BSD sockets. Sockets will use poll by default (if supported by the platform), but this can be toggled with the USE_SOCKET_FEATURE_POLL macro.
#jira UE-126684
#rb Brian.Bekich, Brandon.Schaefer
#preflight 62585a33010ebc5d4e81eb25

[CL 19759812 by alex koumandarakis in ue5-main branch]
2022-04-14 13:46:36 -04:00
will damon
b17ecc43bb Add support for Xcode 13.3
- Always ignore -Wunused-but-set-variable (on Apple platforms).
- Ignore -Wunordered-compare-function-pointers on third-party includes (across all clang platforms).

#rb brandon.schaefer
#jira UE-145699
#preflight 622d1696dd1bf3a95a9dfbf0
#rnx

#ROBOMERGE-AUTHOR: will.damon
#ROBOMERGE-SOURCE: CL 19375174 in //UE5/Release-5.0/... via CL 19376309
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19378035 by will damon in ue5-main branch]
2022-03-14 16:31:05 -04:00
marc audy
2c4ef8db33 add new core delegates (OnParentBeginFork, OnParentPreFork, OnPostFork, OnEndFramePostFork) to allow interested parties a chance to take actions before and after the process fork point on dedicated servers
#jira UE-143512
#rb louisphilippe.seguin
#preflight
[REVIEW] [at]sam.zamani [at]rob.cannaday

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: evan.kinney
#ROBOMERGE-SOURCE: CL 19102416 via CL 19103934 via CL 19106412 via CL 19106558 via CL 19110150
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
#ROBOMERGE-CONFLICT from-shelf

[CL 19151456 by marc audy in ue5-main branch]
2022-02-25 13:23:06 -05:00
Michael Sartain
d09ba57823 Implement FUnixPlatformMisc::GetPrimaryGPUBrand()
For NVIDIA, should return something like:

  "NVIDIA GeForce RTX 3080 Ti (NVIDIA UNIX x86_64 Kernel Module  470.86  Tue Oct 26 21:55:45 UTC 2021)"

And AMD Mesa:

  "AMD PCI-id: 1002-731f (1462-3811)"

#review-18888533 @Brandon.Schaefer, @Robert.Seiver
#fyi Thomas.Convard
#jira UE-141264
#preflight trivial

[CL 18889756 by Michael Sartain in ue5-main branch]
2022-02-07 13:56:08 -05:00
arne schober
1697186e12 FEM - enable aligned malloc for after it was accitently disabled a while back.
#ROBOMERGE-AUTHOR: arne.schober
#ROBOMERGE-SOURCE: CL 18701089 via CL 18701091 via CL 18701094 via CL 18702221 via CL 18702246 via CL 18702283
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18702287 by arne schober in ue5-main branch]
2022-01-22 14:45:23 -05:00
michael sartain
fc8351a183 Added FUnixPlatformFile::CopyFile() that differs from the generic implementation in that it also copies the file permission bits.
This is similar to CL 2421073, 2424491 for FApplePlatformFile.

[at]Brandon.Schaefer, [at]Robert.Seiver
[FYI] Will.Damon
#jira none
#preflight trivial

#ROBOMERGE-AUTHOR: michael.sartain
#ROBOMERGE-SOURCE: CL 18604349 in //UE5/Release-5.0/... via CL 18604376 via CL 18604394
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v899-18417669)

[CL 18604413 by michael sartain in ue5-main branch]
2022-01-13 15:57:24 -05:00
michael sartain
3e2943820e Add Linux -crashhandlerstacksize command line option to set crash handler stack size
Also move stack to mmap'd memory instead of alloc'ing in heap

Should allow us to set & reduce size of 200k stack significantly via command line.

Brandon.Schaefer
#jira none
#preflight 61dc61cb1f62d3ad4d8079d4

#ROBOMERGE-AUTHOR: michael.sartain
#ROBOMERGE-SOURCE: CL 18561402 in //UE5/Release-5.0/... via CL 18561404
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18561421 by michael sartain in ue5-release-engine-test branch]
2022-01-10 12:18:10 -05:00
jack porter
e7b6f0102c Add flag to FPlatformProcess::CreatePipe to indicate the pipe will be used for stdin redirection rather than stdout redirection.
Windows needs to set permissions accordingly.
#rb Brandon.Schaefer
[FYI] Josh.Adams
#preflight 61d79ed84c252480ca31e640

#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 18539045 in //UE5/Release-5.0/... via CL 18539064
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18539081 by jack porter in ue5-release-engine-test branch]
2022-01-06 21:19:58 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
nuno leiria
92c8a74ffe Change Stadia time to use Unix time again.
Functional tests discovered errors in the implementation. This way Improvements to Unix also improve Stadia without duplicated effort.

#preflight 61389e432d09b9000155e7e6
#rb trivial

#ROBOMERGE-AUTHOR: nuno.leiria
#ROBOMERGE-SOURCE: CL 17457455 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17457471 by nuno leiria in ue5-release-engine-test branch]
2021-09-08 09:07:40 -04:00
geordiemhall
1c5bfd52de Implement OutStdErr in FUnixPlatformProcess::ExecProcess
Add stderr parameter to CreateProc
Add exec-process test to TestPAL

PR #6919: Add a new FPlatformProcess::CreateProc() overload to allow separating stderr and stdout (Contributed by geordiemhall)

#rb Brandon.Schaefer, James.Singer, Robert.Seiver, Will.Damon
#jira UE-91758, UE-92964

#ROBOMERGE-SOURCE: CL 17290306 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v861-17282326)

[CL 17290325 by geordiemhall in ue5-release-engine-test branch]
2021-08-24 14:16:10 -04:00
johan torp
272087e936 Fix OnOutOfMemory thread-safety issue when concurrent calls return from the function
Change all FPlatformMemory::OnOutOfMemory implementations to [[noreturn]]

#jira UE-93728
#rb steve.robb, arciel.rekman

#ROBOMERGE-SOURCE: CL 17212898 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17212911 by johan torp in ue5-release-engine-test branch]
2021-08-18 06:20:03 -04:00
aurel cordonnier
dc4bf61540 Merge from Release-Engine-Staging @ 17030559 to Release-Engine-Test
This represents UE4/Main @ 17030256 and Dev-PerfTest @ 17030553

[CL 17031509 by aurel cordonnier in ue5-release-engine-test branch]
2021-08-03 11:56:47 -04:00
louisphilippe seguin
9da3c4d82c Made UnixCrashContext for ensures thread-safe
* Stop adding/removing FTicker delegates outside the game-thread
* Made the concurrently uploading processes thread-safe using atomic state machine
* Added option to limit the number of processes on dedicated game servers
* Fix ensures not getting sent on dedicated game servers

#rb brandon.schaefer, robert.siever, ryan.gerleve
#jira FORT-392630


#ushell-cherrypick of 16969720 by louisphilippe.seguin

#ROBOMERGE-SOURCE: CL 16968970 in //Fortnite/Release-17.30/... via CL 16968983 via CL 16982775
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16982781 by louisphilippe seguin in ue5-release-engine-test branch]
2021-07-28 11:23:01 -04:00