Re: [Mesa-dev] [PATCH v2] clover: Reduce wait_count in abort path.
Jan Vesely writes: > Trigger waiter condition variable. > Passes 'events' CTS on carrizo and turks. > v2: reduce to 0 > > Signed-off-by: Jan Vesely Reviewed-by: Francisco Jerez > --- > src/gallium/state_trackers/clover/core/event.cpp | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/src/gallium/state_trackers/clover/core/event.cpp > b/src/gallium/state_trackers/clover/core/event.cpp > index b7eb33dbfc..3d313ce896 100644 > --- a/src/gallium/state_trackers/clover/core/event.cpp > +++ b/src/gallium/state_trackers/clover/core/event.cpp > @@ -41,7 +41,7 @@ event::trigger_self() { > std::lock_guard lock(mutex); > std::vector> evs; > > - if (!--_wait_count) > + if (_wait_count && !--_wait_count) >std::swap(_chain, evs); > > cv.notify_all(); > @@ -65,8 +65,10 @@ event::abort_self(cl_int status) { > std::vector> evs; > > _status = status; > + _wait_count = 0; > std::swap(_chain, evs); > > + cv.notify_all(); > return evs; > } > > -- > 2.17.1 signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH v2] clover: Reduce wait_count in abort path.
I can confirm that all 28 CTS 'events' tests pass now on my BARTS (6850) instead of hanging after an intentionally failing event. I'll let Francisco give his say to whether it looks correct, but for this version you can have: Tested-By: Aaron Watry --Aaron On Tue, Jul 24, 2018 at 10:28 PM, Jan Vesely wrote: > Trigger waiter condition variable. > Passes 'events' CTS on carrizo and turks. > v2: reduce to 0 > > Signed-off-by: Jan Vesely > --- > src/gallium/state_trackers/clover/core/event.cpp | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/src/gallium/state_trackers/clover/core/event.cpp > b/src/gallium/state_trackers/clover/core/event.cpp > index b7eb33dbfc..3d313ce896 100644 > --- a/src/gallium/state_trackers/clover/core/event.cpp > +++ b/src/gallium/state_trackers/clover/core/event.cpp > @@ -41,7 +41,7 @@ event::trigger_self() { > std::lock_guard lock(mutex); > std::vector> evs; > > - if (!--_wait_count) > + if (_wait_count && !--_wait_count) >std::swap(_chain, evs); > > cv.notify_all(); > @@ -65,8 +65,10 @@ event::abort_self(cl_int status) { > std::vector> evs; > > _status = status; > + _wait_count = 0; > std::swap(_chain, evs); > > + cv.notify_all(); > return evs; > } > > -- > 2.17.1 > ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
[Mesa-dev] [PATCH v2] clover: Reduce wait_count in abort path.
Trigger waiter condition variable. Passes 'events' CTS on carrizo and turks. v2: reduce to 0 Signed-off-by: Jan Vesely --- src/gallium/state_trackers/clover/core/event.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/state_trackers/clover/core/event.cpp b/src/gallium/state_trackers/clover/core/event.cpp index b7eb33dbfc..3d313ce896 100644 --- a/src/gallium/state_trackers/clover/core/event.cpp +++ b/src/gallium/state_trackers/clover/core/event.cpp @@ -41,7 +41,7 @@ event::trigger_self() { std::lock_guard lock(mutex); std::vector> evs; - if (!--_wait_count) + if (_wait_count && !--_wait_count) std::swap(_chain, evs); cv.notify_all(); @@ -65,8 +65,10 @@ event::abort_self(cl_int status) { std::vector> evs; _status = status; + _wait_count = 0; std::swap(_chain, evs); + cv.notify_all(); return evs; } -- 2.17.1 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev