diff options
| author | Thog <me@thog.eu> | 2020-05-02 22:47:06 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-02 22:47:06 +0200 |
| commit | 764891e670718026c89c452d9a603a36fcf31539 (patch) | |
| tree | bbf6ec4613198f6c75e4bc971c356014fcc4d4dc /Ryujinx.Graphics.Gpu/Synchronization | |
| parent | 0a3b75ae2bde4502771ad15f723ff8bc72529beb (diff) | |
nvservice: add a lock around NvHostEvent and remove release fence on SFv2 (#1197)
* nvservice: add a lock to NvHostEvent
* Disable surface flinger release fence and readd infinite timeout
* FenceAction: Add a timeout of 1 seconds as this shouldn't wait forever anyuway
* surfaceflinger: remove leftovers from the release fence
* Don't allow infinite timeout on syncpoint while printing all timeout for better debugging
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Synchronization')
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs b/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs index 2c9f383a..494b0c03 100644 --- a/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs +++ b/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs @@ -112,14 +112,10 @@ namespace Ryujinx.Graphics.Gpu.Synchronization throw new ArgumentOutOfRangeException(nameof(id)); } - bool warnAboutTimeout = false; - // TODO: Remove this when GPU channel scheduling will be implemented. if (timeout == Timeout.InfiniteTimeSpan) { timeout = TimeSpan.FromSeconds(1); - - warnAboutTimeout = true; } using (ManualResetEvent waitEvent = new ManualResetEvent(false)) @@ -135,10 +131,7 @@ namespace Ryujinx.Graphics.Gpu.Synchronization if (!signaled && info != null) { - if (warnAboutTimeout) - { - Logger.PrintError(LogClass.Gpu, $"Wait on syncpoint {id} for threshold {threshold} took more than {timeout.TotalMilliseconds}ms, resuming execution..."); - } + Logger.PrintError(LogClass.Gpu, $"Wait on syncpoint {id} for threshold {threshold} took more than {timeout.TotalMilliseconds}ms, resuming execution..."); _syncpoints[id].UnregisterCallback(info); } |
