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 <[email protected]>

--Aaron



On Tue, Jul 24, 2018 at 10:28 PM, Jan Vesely <[email protected]> wrote:
> Trigger waiter condition variable.
> Passes 'events' CTS on carrizo and turks.
> v2: reduce to 0
>
> Signed-off-by: Jan Vesely <[email protected]>
> ---
>  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<std::mutex> lock(mutex);
>     std::vector<intrusive_ref<event>> 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<intrusive_ref<event>> evs;
>
>     _status = status;
> +   _wait_count = 0;
>     std::swap(_chain, evs);
>
> +   cv.notify_all();
>     return evs;
>  }
>
> --
> 2.17.1
>
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to