From: Aaron Watry Date: Fri, 4 Aug 2017 01:55:18 +0000 (-0500) Subject: clover/event: Include additional event statuses for clSetEventCallback X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a8296dbd5a7d90a3a52e7a28fce5b8e8982efbeb;p=mesa.git clover/event: Include additional event statuses for clSetEventCallback From CL 2.0 Section 5.11 (Event Objects): clSetEventCallback returns CL_SUCCESS if the function is executed successfully. Otherwise, it returns one of the following errors: ... CL_INVALID_VALUE if pfn_event_notify is NULL or if command_exec_callback_type is not CL_SUBMITTED , CL_RUNNING or CL_COMPLETE . Fixes: OpenCL CTS test_conformance/events/test_events callbacks Signed-off-by: Aaron Watry Reviewed-by: Francisco Jerez --- diff --git a/src/gallium/state_trackers/clover/api/event.cpp b/src/gallium/state_trackers/clover/api/event.cpp index 5d1a0e52c56..3f89644d0a4 100644 --- a/src/gallium/state_trackers/clover/api/event.cpp +++ b/src/gallium/state_trackers/clover/api/event.cpp @@ -126,7 +126,8 @@ clSetEventCallback(cl_event d_ev, cl_int type, void *user_data) try { auto &ev = obj(d_ev); - if (!pfn_notify || type != CL_COMPLETE) + if (!pfn_notify || + (type != CL_COMPLETE && type != CL_SUBMITTED && type != CL_RUNNING)) throw error(CL_INVALID_VALUE); // Create a temporary soft event that depends on ev, with