Matteo Bruni : wined3d: Disable CSMT when fences are not supported.
Module: wine Branch: master Commit: c99e6b33a36d28376bc9c11e49ca937dd5e72f3e URL: https://source.winehq.org/git/wine.git/?a=commit;h=c99e6b33a36d28376bc9c11e4... Author: Matteo Bruni <mbruni(a)codeweavers.com> Date: Wed Apr 27 13:21:56 2022 +0200 wined3d: Disable CSMT when fences are not supported. Signed-off-by: Matteo Bruni <mbruni(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wined3d/cs.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c index cf7debe4256..6cbc9e2e2a6 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c @@ -3421,6 +3421,15 @@ struct wined3d_cs *wined3d_cs_create(struct wined3d_device *device, if (!(cs->data = heap_alloc(cs->data_size))) goto fail; + if (wined3d_settings.cs_multithreaded & WINED3D_CSMT_ENABLE) + { + if (!d3d_info->fences) + { + WARN("Disabling CSMT, adapter doesn't support fences.\n"); + wined3d_settings.cs_multithreaded &= ~WINED3D_CSMT_ENABLE; + } + } + if (wined3d_settings.cs_multithreaded & WINED3D_CSMT_ENABLE && !RtlIsCriticalSectionLockedByThread(NtCurrentTeb()->Peb->LoaderLock)) {
participants (1)
-
Alexandre Julliard