[Mesa-dev] [PATCH 03/19] glx/drisw: add support for DRI2rendererQueryExtension
Emil Velikov
emil.l.velikov at gmail.com
Wed Aug 20 12:27:58 PDT 2014
On 20/08/14 19:32, Jon TURNEY wrote:
> On 18/08/2014 13:08, Emil Velikov wrote:
>> On 18/08/14 12:47, Jon TURNEY wrote:
>>> On 14/08/2014 23:18, Emil Velikov wrote:
>>>> The extension is used by GLX_MESA_query_renderer, which
>>>> can be provided for by hardware and software drivers.
>>>>
>>>> v2: Use designated initializers.
>>>> v3: Move drisw_query_renderer_*() to dri2_query_renderer.c
>>>
>>> This breaks my build (see [1])
>>>
>> Ouch, I've completely forgot about your recent-ish changes in here. Sorry for
>> the breakage.
>>
>>> I guess something like the attached is needed.
>>>
>>> Possibly dri2_query_renderer.c needs to be renamed, since it's contents now
>>> are used for more than dri[23].
>>>
>> My initial plan was to move the functions to dri_common.c, although that
>> caused 'make check' to explode so I've kept them here as per Ian's suggestion.
>> Renaming the file makes sense imho.
>
>> With a couple of small changes, I believe that you should be safe with
>> dropping the above header and the HAVE_LIBDRM guards below.
>>
>> The small changes:
>> - dri*_query_renderer_* into their respective dri*_priv.h
>
> I had a go at writing the patch like that, which seems to work.
>
> Revised patch attached.
>
Can you just add "glx:" or similar prefix in the subject line before
committing ? Other than that it looks good imho.
Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com>
>> - Perhaps move a struct from dri2.h to dri2_priv.h
>
> I don't know which struct you mean here. I didn't find one I needed to move
> to make things build.
>
I know that the dri2 waters are quite deep but wasn't sure how murky they are,
thus the "Perhaps ...".
> The dri2_convert_glx_query_renderer_attribs() helper function could possibly
> stand to be given a more generic name.
>
IMHO one could do a few cleanups in glx, and I highly doubt that anyone would
object. I would be quite happy if anyone bothered :)
Thanks
Emil
>
> 0001-Fix-build-since-679c2ef-glx-drisw-add-support-for-DR.patch
>
>
> From 1f06833a856b98b6c5248f0f001bf5b3a74ae010 Mon Sep 17 00:00:00 2001
> From: Jon TURNEY <jon.turney at dronecode.org.uk>
> Date: Sun, 17 Aug 2014 17:22:22 +0100
> Subject: [PATCH] Fix build since 679c2ef "glx/drisw: add support for
> DRI2rendererQueryExtension", when only building drisw renderer.
>
> v2:
> - Move dri*_query_renderer_* into their respective dri*_priv.h headers
> - Drop then unnneeded include of dri2.h from dri2_query_renderer.c
> - Rename dri2_query_renderer.c as dri_common_query_renderer.c, as it's contents
> now are used for more than dri[23]
>
> Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
> ---
> src/glx/Makefile.am | 6 +++---
> src/glx/dri2.h | 16 ----------------
> src/glx/dri2_priv.h | 8 ++++++++
> src/glx/dri3_priv.h | 9 +++++++++
> ...dri2_query_renderer.c => dri_common_query_renderer.c} | 1 -
> 5 files changed, 20 insertions(+), 20 deletions(-)
> rename src/glx/{dri2_query_renderer.c => dri_common_query_renderer.c} (99%)
>
> diff --git a/src/glx/Makefile.am b/src/glx/Makefile.am
> index cdd898e..4515312 100644
> --- a/src/glx/Makefile.am
> +++ b/src/glx/Makefile.am
> @@ -96,7 +96,8 @@ endif
> if HAVE_DRICOMMON
> libglx_la_SOURCES += \
> xfont.c \
> - dri_common.c
> + dri_common.c \
> + dri_common_query_renderer.c
> endif
>
> if HAVE_DRI2
> @@ -104,8 +105,7 @@ libglx_la_SOURCES += \
> dri_glx.c \
> XF86dri.c \
> dri2_glx.c \
> - dri2.c \
> - dri2_query_renderer.c
> + dri2.c
> endif
>
> if HAVE_DRI3
> diff --git a/src/glx/dri2.h b/src/glx/dri2.h
> index d07b296..4be5bf8 100644
> --- a/src/glx/dri2.h
> +++ b/src/glx/dri2.h
> @@ -88,20 +88,4 @@ DRI2CopyRegion(Display * dpy, XID drawable,
> XserverRegion region,
> CARD32 dest, CARD32 src);
>
> -_X_HIDDEN int
> -dri2_query_renderer_integer(struct glx_screen *base, int attribute,
> - unsigned int *value);
> -
> -_X_HIDDEN int
> -dri2_query_renderer_string(struct glx_screen *base, int attribute,
> - const char **value);
> -
> -_X_HIDDEN int
> -dri3_query_renderer_integer(struct glx_screen *base, int attribute,
> - unsigned int *value);
> -
> -_X_HIDDEN int
> -dri3_query_renderer_string(struct glx_screen *base, int attribute,
> - const char **value);
> -
> #endif
> diff --git a/src/glx/dri2_priv.h b/src/glx/dri2_priv.h
> index c21eee5..b93d158 100644
> --- a/src/glx/dri2_priv.h
> +++ b/src/glx/dri2_priv.h
> @@ -50,3 +50,11 @@ struct dri2_screen {
>
> int show_fps_interval;
> };
> +
> +_X_HIDDEN int
> +dri2_query_renderer_integer(struct glx_screen *base, int attribute,
> + unsigned int *value);
> +
> +_X_HIDDEN int
> +dri2_query_renderer_string(struct glx_screen *base, int attribute,
> + const char **value);
> diff --git a/src/glx/dri3_priv.h b/src/glx/dri3_priv.h
> index c0e35ee..248fa28 100644
> --- a/src/glx/dri3_priv.h
> +++ b/src/glx/dri3_priv.h
> @@ -195,3 +195,12 @@ struct dri3_drawable {
> xcb_gcontext_t gc;
> xcb_special_event_t *special_event;
> };
> +
> +
> +_X_HIDDEN int
> +dri3_query_renderer_integer(struct glx_screen *base, int attribute,
> + unsigned int *value);
> +
> +_X_HIDDEN int
> +dri3_query_renderer_string(struct glx_screen *base, int attribute,
> + const char **value);
> diff --git a/src/glx/dri2_query_renderer.c b/src/glx/dri_common_query_renderer.c
> similarity index 99%
> rename from src/glx/dri2_query_renderer.c
> rename to src/glx/dri_common_query_renderer.c
> index 247ec1c..d598b12 100644
> --- a/src/glx/dri2_query_renderer.c
> +++ b/src/glx/dri_common_query_renderer.c
> @@ -25,7 +25,6 @@
>
> #include "glxclient.h"
> #include "glx_error.h"
> -#include "dri2.h"
> #include "dri_interface.h"
> #include "dri2_priv.h"
> #if defined(HAVE_DRI3)
> -- 1.8.5.5
>
More information about the mesa-dev
mailing list