From 9ec45259c04f9b4188fbaa07bf57f160784847e3 Mon Sep 17 00:00:00 2001 From: smp79 Date: Thu, 2 Jan 2025 01:59:13 +0300 Subject: [PATCH] [le12] Drop fences-revert patch for Generic --- .../patches/kodi/000-temp-revert-fences.patch | 571 ------------------ 1 file changed, 571 deletions(-) delete mode 100644 projects/Generic/patches/kodi/000-temp-revert-fences.patch diff --git a/projects/Generic/patches/kodi/000-temp-revert-fences.patch b/projects/Generic/patches/kodi/000-temp-revert-fences.patch deleted file mode 100644 index 23bb0ce5ec3..00000000000 --- a/projects/Generic/patches/kodi/000-temp-revert-fences.patch +++ /dev/null @@ -1,571 +0,0 @@ -From 711a8784ecf9a8193ec33c80d3e63723efa3617b Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Tue, 31 Dec 2024 13:05:16 +0100 -Subject: [PATCH 1/4] Revert "CEGLFence: Ignore improper atomic drmrequest when - async rendering and" - -This reverts commit 396e4b286f0c104d41facca3ca7633f21f0907da. ---- - xbmc/utils/EGLFence.cpp | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/xbmc/utils/EGLFence.cpp b/xbmc/utils/EGLFence.cpp -index 58a9ec1683be..9d0065bdaf07 100644 ---- a/xbmc/utils/EGLFence.cpp -+++ b/xbmc/utils/EGLFence.cpp -@@ -133,7 +133,11 @@ void CEGLFence::WaitSyncCPU() - if (!m_kmsFence) - return; - -- if (m_eglClientWaitSyncKHR(m_display, m_kmsFence, 0, EGL_FOREVER_KHR) != EGL_FALSE) -- m_eglDestroySyncKHR(m_display, m_kmsFence); -+ EGLint status{EGL_FALSE}; -+ -+ while (status != EGL_CONDITION_SATISFIED_KHR) -+ status = m_eglClientWaitSyncKHR(m_display, m_kmsFence, 0, EGL_FOREVER_KHR); -+ -+ m_eglDestroySyncKHR(m_display, m_kmsFence); - } - #endif --- -2.39.5 - - -From 95536ae880d43c38721fe346d52ff0b2efc7aa67 Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Tue, 31 Dec 2024 13:05:21 +0100 -Subject: [PATCH 2/4] Revert "CDRMAtomic: Backlog only the last known good - drmrequest" - -This reverts commit e13ba25f11c1d1315033701f078bd15d2433ddd3. ---- - xbmc/windowing/gbm/drm/DRMAtomic.cpp | 8 +++----- - 1 file changed, 3 insertions(+), 5 deletions(-) - -diff --git a/xbmc/windowing/gbm/drm/DRMAtomic.cpp b/xbmc/windowing/gbm/drm/DRMAtomic.cpp -index 70ae92e9482d..ff7f137d60e6 100644 ---- a/xbmc/windowing/gbm/drm/DRMAtomic.cpp -+++ b/xbmc/windowing/gbm/drm/DRMAtomic.cpp -@@ -149,11 +149,6 @@ void CDRMAtomic::DrmAtomicCommit(int fb_id, int flags, bool rendered, bool video - { - CLog::Log(LOGERROR, "CDRMAtomic::{} - atomic commit failed: {}", __FUNCTION__, - strerror(errno)); -- m_atomicRequestQueue.pop_back(); -- } -- else if (m_atomicRequestQueue.size() > 1) -- { -- m_atomicRequestQueue.pop_front(); - } - - if (m_inFenceFd != -1) -@@ -169,6 +164,9 @@ void CDRMAtomic::DrmAtomicCommit(int fb_id, int flags, bool rendered, bool video - strerror(errno)); - } - -+ if (m_atomicRequestQueue.size() > 1) -+ m_atomicRequestQueue.pop_back(); -+ - m_atomicRequestQueue.emplace_back(std::make_unique()); - m_req = m_atomicRequestQueue.back().get(); - } --- -2.39.5 - - -From ee236db5f93c6c6eae8d28c8ed6b40897d5920b3 Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Tue, 31 Dec 2024 13:07:02 +0100 -Subject: [PATCH 3/4] Revert "CDRMAtomic: add support for using - DRM_MODE_ATOMIC_NONBLOCK" - -This reverts commit e9710033029d86efa0c18a6121d2c6376f74ef10. ---- - xbmc/windowing/gbm/WinSystemGbm.cpp | 8 +++--- - xbmc/windowing/gbm/WinSystemGbm.h | 2 +- - xbmc/windowing/gbm/WinSystemGbmEGLContext.cpp | 11 -------- - xbmc/windowing/gbm/WinSystemGbmEGLContext.h | 3 --- - xbmc/windowing/gbm/WinSystemGbmGLContext.cpp | 26 +----------------- - .../windowing/gbm/WinSystemGbmGLESContext.cpp | 27 +------------------ - xbmc/windowing/gbm/drm/DRMAtomic.cpp | 19 +++---------- - xbmc/windowing/gbm/drm/DRMAtomic.h | 2 +- - xbmc/windowing/gbm/drm/DRMLegacy.cpp | 2 +- - xbmc/windowing/gbm/drm/DRMLegacy.h | 2 +- - xbmc/windowing/gbm/drm/DRMUtils.h | 13 +-------- - xbmc/windowing/gbm/drm/OffScreenModeSetting.h | 2 +- - 12 files changed, 15 insertions(+), 102 deletions(-) - -diff --git a/xbmc/windowing/gbm/WinSystemGbm.cpp b/xbmc/windowing/gbm/WinSystemGbm.cpp -index 72497a215684..ba472fc29079 100644 ---- a/xbmc/windowing/gbm/WinSystemGbm.cpp -+++ b/xbmc/windowing/gbm/WinSystemGbm.cpp -@@ -278,7 +278,7 @@ void CWinSystemGbm::UpdateDisplayHardwareScaling(const RESOLUTION_INFO& resInfo) - SetFullScreen(true, resMutable, false); - } - --void CWinSystemGbm::FlipPage(bool rendered, bool videoLayer, bool async) -+void CWinSystemGbm::FlipPage(bool rendered, bool videoLayer) - { - if (m_videoLayerBridge && !videoLayer) - { -@@ -293,7 +293,7 @@ void CWinSystemGbm::FlipPage(bool rendered, bool videoLayer, bool async) - bo = m_GBM->GetDevice().GetSurface().LockFrontBuffer().Get(); - } - -- m_DRM->FlipPage(bo, rendered, videoLayer, async); -+ m_DRM->FlipPage(bo, rendered, videoLayer); - - if (m_videoLayerBridge && !videoLayer) - { -@@ -310,14 +310,14 @@ bool CWinSystemGbm::UseLimitedColor() - bool CWinSystemGbm::Hide() - { - bool ret = m_DRM->SetActive(false); -- FlipPage(false, false, false); -+ FlipPage(false, false); - return ret; - } - - bool CWinSystemGbm::Show(bool raise) - { - bool ret = m_DRM->SetActive(true); -- FlipPage(false, false, false); -+ FlipPage(false, false); - return ret; - } - -diff --git a/xbmc/windowing/gbm/WinSystemGbm.h b/xbmc/windowing/gbm/WinSystemGbm.h -index 9609675d7220..8993b6d27865 100644 ---- a/xbmc/windowing/gbm/WinSystemGbm.h -+++ b/xbmc/windowing/gbm/WinSystemGbm.h -@@ -49,7 +49,7 @@ public: - bool DisplayHardwareScalingEnabled() override; - void UpdateDisplayHardwareScaling(const RESOLUTION_INFO& resInfo) override; - -- void FlipPage(bool rendered, bool videoLayer, bool async); -+ void FlipPage(bool rendered, bool videoLayer); - - bool CanDoWindowed() override { return false; } - void UpdateResolutions() override; -diff --git a/xbmc/windowing/gbm/WinSystemGbmEGLContext.cpp b/xbmc/windowing/gbm/WinSystemGbmEGLContext.cpp -index fac914d5e9f2..2fb742efed35 100644 ---- a/xbmc/windowing/gbm/WinSystemGbmEGLContext.cpp -+++ b/xbmc/windowing/gbm/WinSystemGbmEGLContext.cpp -@@ -58,17 +58,6 @@ bool CWinSystemGbmEGLContext::InitWindowSystemEGL(EGLint renderableType, EGLint - return false; - } - -- if (CEGLUtils::HasExtension(m_eglContext.GetEGLDisplay(), "EGL_ANDROID_native_fence_sync") && -- CEGLUtils::HasExtension(m_eglContext.GetEGLDisplay(), "EGL_KHR_fence_sync")) -- { -- m_eglFence = std::make_unique(m_eglContext.GetEGLDisplay()); -- } -- else -- { -- CLog::Log(LOGWARNING, "[GBM] missing support for EGL_KHR_fence_sync and " -- "EGL_ANDROID_native_fence_sync - performance may be impacted"); -- } -- - return true; - } - -diff --git a/xbmc/windowing/gbm/WinSystemGbmEGLContext.h b/xbmc/windowing/gbm/WinSystemGbmEGLContext.h -index fbd52354ee7f..84f863d6d321 100644 ---- a/xbmc/windowing/gbm/WinSystemGbmEGLContext.h -+++ b/xbmc/windowing/gbm/WinSystemGbmEGLContext.h -@@ -9,7 +9,6 @@ - #pragma once - - #include "WinSystemGbm.h" --#include "utils/EGLFence.h" - #include "utils/EGLUtils.h" - #include "windowing/linux/WinSystemEGL.h" - -@@ -47,8 +46,6 @@ protected: - bool InitWindowSystemEGL(EGLint renderableType, EGLint apiType); - virtual bool CreateContext() = 0; - -- std::unique_ptr m_eglFence; -- - struct delete_CVaapiProxy - { - void operator()(CVaapiProxy *p) const; -diff --git a/xbmc/windowing/gbm/WinSystemGbmGLContext.cpp b/xbmc/windowing/gbm/WinSystemGbmGLContext.cpp -index adbb539f210d..e4ff49c61835 100644 ---- a/xbmc/windowing/gbm/WinSystemGbmGLContext.cpp -+++ b/xbmc/windowing/gbm/WinSystemGbmGLContext.cpp -@@ -119,37 +119,13 @@ void CWinSystemGbmGLContext::PresentRender(bool rendered, bool videoLayer) - { - if (rendered) - { --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- if (m_eglFence) -- { -- int fd = m_DRM->TakeOutFenceFd(); -- if (fd != -1) -- { -- m_eglFence->CreateKMSFence(fd); -- m_eglFence->WaitSyncGPU(); -- } -- -- m_eglFence->CreateGPUFence(); -- } --#endif -- - if (!m_eglContext.TrySwapBuffers()) - { - CEGLUtils::Log(LOGERROR, "eglSwapBuffers failed"); - throw std::runtime_error("eglSwapBuffers failed"); - } -- --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- if (m_eglFence) -- { -- int fd = m_eglFence->FlushFence(); -- m_DRM->SetInFenceFd(fd); -- -- m_eglFence->WaitSyncCPU(); -- } --#endif - } -- CWinSystemGbm::FlipPage(rendered, videoLayer, static_cast(m_eglFence)); -+ CWinSystemGbm::FlipPage(rendered, videoLayer); - - if (m_dispReset && m_dispResetTimer.IsTimePast()) - { -diff --git a/xbmc/windowing/gbm/WinSystemGbmGLESContext.cpp b/xbmc/windowing/gbm/WinSystemGbmGLESContext.cpp -index ad80abf46c3e..0d071c31f168 100644 ---- a/xbmc/windowing/gbm/WinSystemGbmGLESContext.cpp -+++ b/xbmc/windowing/gbm/WinSystemGbmGLESContext.cpp -@@ -128,38 +128,13 @@ void CWinSystemGbmGLESContext::PresentRender(bool rendered, bool videoLayer) - { - if (rendered) - { --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- if (m_eglFence) -- { -- int fd = m_DRM->TakeOutFenceFd(); -- if (fd != -1) -- { -- m_eglFence->CreateKMSFence(fd); -- m_eglFence->WaitSyncGPU(); -- } -- -- m_eglFence->CreateGPUFence(); -- } --#endif -- - if (!m_eglContext.TrySwapBuffers()) - { - CEGLUtils::Log(LOGERROR, "eglSwapBuffers failed"); - throw std::runtime_error("eglSwapBuffers failed"); - } -- --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- if (m_eglFence) -- { -- int fd = m_eglFence->FlushFence(); -- m_DRM->SetInFenceFd(fd); -- -- m_eglFence->WaitSyncCPU(); -- } --#endif - } -- -- CWinSystemGbm::FlipPage(rendered, videoLayer, static_cast(m_eglFence)); -+ CWinSystemGbm::FlipPage(rendered, videoLayer); - - if (m_dispReset && m_dispResetTimer.IsTimePast()) - { -diff --git a/xbmc/windowing/gbm/drm/DRMAtomic.cpp b/xbmc/windowing/gbm/drm/DRMAtomic.cpp -index ff7f137d60e6..029b5cae813e 100644 ---- a/xbmc/windowing/gbm/drm/DRMAtomic.cpp -+++ b/xbmc/windowing/gbm/drm/DRMAtomic.cpp -@@ -111,11 +111,6 @@ void CDRMAtomic::DrmAtomicCommit(int fb_id, int flags, bool rendered, bool video - AddProperty(m_gui_plane, "CRTC_H", m_mode->vdisplay); - } - -- if (m_inFenceFd != -1) -- { -- AddProperty(m_crtc, "OUT_FENCE_PTR", reinterpret_cast(&m_outFenceFd)); -- AddProperty(m_gui_plane, "IN_FENCE_FD", m_inFenceFd); -- } - } - else if (videoLayer && !CServiceBroker::GetGUI()->GetWindowManager().HasVisibleControls()) - { -@@ -151,12 +146,6 @@ void CDRMAtomic::DrmAtomicCommit(int fb_id, int flags, bool rendered, bool video - strerror(errno)); - } - -- if (m_inFenceFd != -1) -- { -- close(m_inFenceFd); -- m_inFenceFd = -1; -- } -- - if (flags & DRM_MODE_ATOMIC_ALLOW_MODESET) - { - if (drmModeDestroyPropertyBlob(m_fd, blob_id) != 0) -@@ -171,10 +160,9 @@ void CDRMAtomic::DrmAtomicCommit(int fb_id, int flags, bool rendered, bool video - m_req = m_atomicRequestQueue.back().get(); - } - --void CDRMAtomic::FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, bool async) -+void CDRMAtomic::FlipPage(struct gbm_bo *bo, bool rendered, bool videoLayer) - { - struct drm_fb *drm_fb = nullptr; -- uint32_t flags = 0; - - if (rendered) - { -@@ -189,11 +177,10 @@ void CDRMAtomic::FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, boo - CLog::Log(LOGERROR, "CDRMAtomic::{} - Failed to get a new FBO", __FUNCTION__); - return; - } -- -- if (async && !m_need_modeset) -- flags |= DRM_MODE_ATOMIC_NONBLOCK; - } - -+ uint32_t flags = 0; -+ - if (m_need_modeset) - { - flags |= DRM_MODE_ATOMIC_ALLOW_MODESET; -diff --git a/xbmc/windowing/gbm/drm/DRMAtomic.h b/xbmc/windowing/gbm/drm/DRMAtomic.h -index 6b196575878f..ca2cd9a1d0c9 100644 ---- a/xbmc/windowing/gbm/drm/DRMAtomic.h -+++ b/xbmc/windowing/gbm/drm/DRMAtomic.h -@@ -27,7 +27,7 @@ class CDRMAtomic : public CDRMUtils - public: - CDRMAtomic() = default; - ~CDRMAtomic() override = default; -- void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, bool async) override; -+ void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer) override; - bool SetVideoMode(const RESOLUTION_INFO& res, struct gbm_bo* bo) override; - bool SetActive(bool active) override; - bool InitDrm() override; -diff --git a/xbmc/windowing/gbm/drm/DRMLegacy.cpp b/xbmc/windowing/gbm/drm/DRMLegacy.cpp -index 4e9c3a6b9f3d..418d067e7024 100644 ---- a/xbmc/windowing/gbm/drm/DRMLegacy.cpp -+++ b/xbmc/windowing/gbm/drm/DRMLegacy.cpp -@@ -108,7 +108,7 @@ bool CDRMLegacy::QueueFlip(struct gbm_bo *bo) - return true; - } - --void CDRMLegacy::FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, bool async) -+void CDRMLegacy::FlipPage(struct gbm_bo *bo, bool rendered, bool videoLayer) - { - if (rendered || videoLayer) - { -diff --git a/xbmc/windowing/gbm/drm/DRMLegacy.h b/xbmc/windowing/gbm/drm/DRMLegacy.h -index e763f298f75a..2b7ff4561728 100644 ---- a/xbmc/windowing/gbm/drm/DRMLegacy.h -+++ b/xbmc/windowing/gbm/drm/DRMLegacy.h -@@ -22,7 +22,7 @@ class CDRMLegacy : public CDRMUtils - public: - CDRMLegacy() = default; - ~CDRMLegacy() override = default; -- void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, bool async) override; -+ void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer) override; - bool SetVideoMode(const RESOLUTION_INFO& res, struct gbm_bo* bo) override; - bool SetActive(bool active) override; - bool InitDrm() override; -diff --git a/xbmc/windowing/gbm/drm/DRMUtils.h b/xbmc/windowing/gbm/drm/DRMUtils.h -index f92f716fc4f3..5327e3557046 100644 ---- a/xbmc/windowing/gbm/drm/DRMUtils.h -+++ b/xbmc/windowing/gbm/drm/DRMUtils.h -@@ -15,7 +15,6 @@ - #include "windowing/Resolution.h" - #include "windowing/gbm/GBMUtils.h" - --#include - #include - - #include -@@ -40,7 +39,7 @@ class CDRMUtils - public: - CDRMUtils() = default; - virtual ~CDRMUtils(); -- virtual void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, bool async) {} -+ virtual void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer) {} - virtual bool SetVideoMode(const RESOLUTION_INFO& res, struct gbm_bo* bo) { return false; } - virtual bool SetActive(bool active) { return false; } - virtual bool InitDrm(); -@@ -63,13 +62,6 @@ public: - static uint32_t FourCCWithAlpha(uint32_t fourcc); - static uint32_t FourCCWithoutAlpha(uint32_t fourcc); - -- void SetInFenceFd(int fd) { m_inFenceFd = fd; } -- int TakeOutFenceFd() -- { -- int fd{-1}; -- return std::exchange(m_outFenceFd, fd); -- } -- - protected: - bool OpenDrm(bool needConnector); - drm_fb* DrmFbGetFromBo(struct gbm_bo *bo); -@@ -86,9 +78,6 @@ protected: - int m_width = 0; - int m_height = 0; - -- int m_inFenceFd{-1}; -- int m_outFenceFd{-1}; -- - std::vector> m_planes; - - private: -diff --git a/xbmc/windowing/gbm/drm/OffScreenModeSetting.h b/xbmc/windowing/gbm/drm/OffScreenModeSetting.h -index bba0db9a53dd..4270d4ecb242 100644 ---- a/xbmc/windowing/gbm/drm/OffScreenModeSetting.h -+++ b/xbmc/windowing/gbm/drm/OffScreenModeSetting.h -@@ -22,7 +22,7 @@ class COffScreenModeSetting : public CDRMUtils - public: - COffScreenModeSetting() = default; - ~COffScreenModeSetting() override = default; -- void FlipPage(struct gbm_bo* bo, bool rendered, bool videoLayer, bool async) override {} -+ void FlipPage(struct gbm_bo *bo, bool rendered, bool videoLayer) override {} - bool SetVideoMode(const RESOLUTION_INFO& res, struct gbm_bo *bo) override { return false; } - bool SetActive(bool active) override { return false; } - bool InitDrm() override; --- -2.39.5 - - -From 543af77563f706cd70a5c2975f5fe217bf24024a Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Tue, 31 Dec 2024 13:07:46 +0100 -Subject: [PATCH 4/4] Revert "CEGLFence: add support for using - EGL_KHR_fence_sync and EGL_ANDROID_native_fence_sync" - -This reverts commit ba17e5b45c5bd36ef65089f35049da82a290bb01. ---- - xbmc/utils/EGLFence.cpp | 70 ----------------------------------------- - xbmc/utils/EGLFence.h | 19 ----------- - 2 files changed, 89 deletions(-) - -diff --git a/xbmc/utils/EGLFence.cpp b/xbmc/utils/EGLFence.cpp -index 9d0065bdaf07..535e3bce3197 100644 ---- a/xbmc/utils/EGLFence.cpp -+++ b/xbmc/utils/EGLFence.cpp -@@ -22,14 +22,6 @@ CEGLFence::CEGLFence(EGLDisplay display) - m_eglGetSyncAttribKHR( - CEGLUtils::GetRequiredProcAddress("eglGetSyncAttribKHR")) - { --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- m_eglDupNativeFenceFDANDROID = -- CEGLUtils::GetRequiredProcAddress( -- "eglDupNativeFenceFDANDROID"); -- m_eglClientWaitSyncKHR = -- CEGLUtils::GetRequiredProcAddress("eglClientWaitSyncKHR"); -- m_eglWaitSyncKHR = CEGLUtils::GetRequiredProcAddress("eglWaitSyncKHR"); --#endif - } - - void CEGLFence::CreateFence() -@@ -79,65 +71,3 @@ bool CEGLFence::IsSignaled() - - return false; - } -- --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) --EGLSyncKHR CEGLFence::CreateFence(int fd) --{ -- CEGLAttributes<1> attributeList; -- attributeList.Add({{EGL_SYNC_NATIVE_FENCE_FD_ANDROID, fd}}); -- -- EGLSyncKHR fence = -- m_eglCreateSyncKHR(m_display, EGL_SYNC_NATIVE_FENCE_ANDROID, attributeList.Get()); -- -- if (fence == EGL_NO_SYNC_KHR) -- { -- CEGLUtils::Log(LOGERROR, "failed to create EGL sync object"); -- return nullptr; -- } -- -- return fence; --} -- --void CEGLFence::CreateGPUFence() --{ -- m_gpuFence = CreateFence(EGL_NO_NATIVE_FENCE_FD_ANDROID); --} -- --void CEGLFence::CreateKMSFence(int fd) --{ -- m_kmsFence = CreateFence(fd); --} -- --EGLint CEGLFence::FlushFence() --{ -- EGLint fd = m_eglDupNativeFenceFDANDROID(m_display, m_gpuFence); -- if (fd == EGL_NO_NATIVE_FENCE_FD_ANDROID) -- CEGLUtils::Log(LOGERROR, "failed to duplicate EGL fence fd"); -- -- m_eglDestroySyncKHR(m_display, m_gpuFence); -- -- return fd; --} -- --void CEGLFence::WaitSyncGPU() --{ -- if (!m_kmsFence) -- return; -- -- if (m_eglWaitSyncKHR(m_display, m_kmsFence, 0) != EGL_TRUE) -- CEGLUtils::Log(LOGERROR, "failed to create EGL sync point"); --} -- --void CEGLFence::WaitSyncCPU() --{ -- if (!m_kmsFence) -- return; -- -- EGLint status{EGL_FALSE}; -- -- while (status != EGL_CONDITION_SATISFIED_KHR) -- status = m_eglClientWaitSyncKHR(m_display, m_kmsFence, 0, EGL_FOREVER_KHR); -- -- m_eglDestroySyncKHR(m_display, m_kmsFence); --} --#endif -diff --git a/xbmc/utils/EGLFence.h b/xbmc/utils/EGLFence.h -index 03c246b60b67..bd96444e47e5 100644 ---- a/xbmc/utils/EGLFence.h -+++ b/xbmc/utils/EGLFence.h -@@ -30,14 +30,6 @@ public: - void DestroyFence(); - bool IsSignaled(); - --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- void CreateKMSFence(int fd); -- void CreateGPUFence(); -- EGLint FlushFence(); -- void WaitSyncGPU(); -- void WaitSyncCPU(); --#endif -- - private: - EGLDisplay m_display{nullptr}; - EGLSyncKHR m_fence{nullptr}; -@@ -45,17 +37,6 @@ private: - PFNEGLCREATESYNCKHRPROC m_eglCreateSyncKHR{nullptr}; - PFNEGLDESTROYSYNCKHRPROC m_eglDestroySyncKHR{nullptr}; - PFNEGLGETSYNCATTRIBKHRPROC m_eglGetSyncAttribKHR{nullptr}; -- --#if defined(EGL_ANDROID_native_fence_sync) && defined(EGL_KHR_fence_sync) -- EGLSyncKHR CreateFence(int fd); -- -- EGLSyncKHR m_gpuFence{EGL_NO_SYNC_KHR}; -- EGLSyncKHR m_kmsFence{EGL_NO_SYNC_KHR}; -- -- PFNEGLDUPNATIVEFENCEFDANDROIDPROC m_eglDupNativeFenceFDANDROID{nullptr}; -- PFNEGLCLIENTWAITSYNCKHRPROC m_eglClientWaitSyncKHR{nullptr}; -- PFNEGLWAITSYNCKHRPROC m_eglWaitSyncKHR{nullptr}; --#endif - }; - - } --- -2.39.5 -