summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Vesely <jan.vesely@rutgers.edu>2018-07-17 02:07:45 -0400
committerDylan Baker <dylan@pnwbakers.com>2018-07-26 10:42:06 -0700
commit409894e616b57a2f51d9c4c7be54333de9a03210 (patch)
tree63c2dc7d07313a5ba1c5c0090cea00bc9655880f
parentb97c46f2ce9c43ac5037d4191561f57cb18131ae (diff)
clover: Report error when pipe driver fails to create compute state
CC: <mesa-stable@lists.freedesktop.org> Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Francisco Jerez <currojerez@riseup.net> (cherry picked from commit 154fbd03ccb326317dcfdfe193083d121ef70ece)
-rw-r--r--src/gallium/state_trackers/clover/core/kernel.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/clover/core/kernel.cpp b/src/gallium/state_trackers/clover/core/kernel.cpp
index 47167053231..dab7ef8683a 100644
--- a/src/gallium/state_trackers/clover/core/kernel.cpp
+++ b/src/gallium/state_trackers/clover/core/kernel.cpp
@@ -231,6 +231,10 @@ kernel::exec_context::bind(intrusive_ptr<command_queue> _q,
cs.req_local_mem = mem_local;
cs.req_input_mem = input.size();
st = q->pipe->create_compute_state(q->pipe, &cs);
+ if (!st) {
+ unbind(); // Cleanup
+ throw error(CL_OUT_OF_RESOURCES);
+ }
}
return st;