glthread: don't insert _mesa_post_marshal_hook into every function
authorMarek Olšák <marek.olsak@amd.com>
Wed, 19 Feb 2020 22:29:14 +0000 (17:29 -0500)
committerMarge Bot <eric+marge@anholt.net>
Fri, 6 Mar 2020 01:06:14 +0000 (01:06 +0000)
Let the developer decide that in the python script.

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3948>

src/mapi/glapi/gen/gl_marshal.py
src/mesa/main/marshal.c
src/mesa/main/marshal.h

index 5f4787cc3cc54138a025260f5e2d022ec2914ed3..261213b7442856551f50aae5890a5b5781edcb73 100644 (file)
@@ -131,7 +131,9 @@ class PrintCode(gl_XML.gl_print_base):
 
         if not func.fixed_params and not func.variable_params:
             out('(void) cmd;\n')
-        out('_mesa_post_marshal_hook(ctx);')
+
+        # Uncomment this if you want to call _mesa_glthread_finish for debugging
+        #out('_mesa_glthread_finish(ctx);')
 
     def print_async_struct(self, func):
         out('struct marshal_cmd_{0}'.format(func.name))
index e0d423a4aae207f6dd01a690edb14344cc604671..28054d236c9b1bb3794dbeb8ae65e6059342bbec 100644 (file)
 #include "marshal.h"
 #include "dispatch.h"
 
+static inline void
+_mesa_post_marshal_hook(struct gl_context *ctx)
+{
+   /* This can be enabled for debugging whether a failure is a synchronization
+    * problem between the main thread and the worker thread, or a failure in
+    * how we actually marshal.
+    */
+   if (false)
+      _mesa_glthread_finish(ctx);
+}
+
 struct marshal_cmd_Flush
 {
    struct marshal_cmd_base cmd_base;
index 10c508327a7301483048ea5e545dc210919104da..c15253f397361e6a164e838788392e243aca2fce 100644 (file)
@@ -132,17 +132,6 @@ debug_print_marshal(const char *func)
 struct _glapi_table *
 _mesa_create_marshal_table(const struct gl_context *ctx);
 
-static inline void
-_mesa_post_marshal_hook(struct gl_context *ctx)
-{
-   /* This can be enabled for debugging whether a failure is a synchronization
-    * problem between the main thread and the worker thread, or a failure in
-    * how we actually marshal.
-    */
-   if (false)
-      _mesa_glthread_finish(ctx);
-}
-
 
 /**
  * Checks whether we're on a compat context for code-generated