summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2016-07-07 09:11:17 +0200
committerNicolai Hähnle <[email protected]>2016-07-08 10:58:52 +0200
commit2909e292fc53490d0bc6d433a5ecc1e51e18c34b (patch)
treea2444d607ee76ab271f7508a6f94ff51fa147289 /src/gallium
parent5bcfbf91e53e4f66310fc4ab63a7caf931a1e45c (diff)
gallium: add async flag to pipe_debug_callback
v2: fix typo db -> cb Reviewed-by: Edward O'Callaghan <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/include/pipe/p_state.h6
-rw-r--r--src/gallium/state_trackers/clover/core/queue.cpp5
2 files changed, 10 insertions, 1 deletions
diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h
index ad7bf0f88db..a73a77111a9 100644
--- a/src/gallium/include/pipe/p_state.h
+++ b/src/gallium/include/pipe/p_state.h
@@ -810,6 +810,12 @@ struct pipe_compute_state
struct pipe_debug_callback
{
/**
+ * When set to \c true, the callback may be called asynchronously from a
+ * driver-created thread.
+ */
+ bool async;
+
+ /**
* Callback for the driver to report debug/performance/etc information back
* to the state tracker.
*
diff --git a/src/gallium/state_trackers/clover/core/queue.cpp b/src/gallium/state_trackers/clover/core/queue.cpp
index 24d71f186e0..c91b97ad15e 100644
--- a/src/gallium/state_trackers/clover/core/queue.cpp
+++ b/src/gallium/state_trackers/clover/core/queue.cpp
@@ -50,7 +50,10 @@ command_queue::command_queue(clover::context &ctx, clover::device &dev,
throw error(CL_INVALID_DEVICE);
if (ctx.notify) {
- struct pipe_debug_callback cb = { &debug_notify_callback, this };
+ struct pipe_debug_callback cb;
+ memset(&cb, 0, sizeof(cb));
+ cb.debug_message = &debug_notify_callback;
+ cb.data = this;
if (pipe->set_debug_callback)
pipe->set_debug_callback(pipe, &cb);
}