[Mesa-dev] [PATCH v2 7/7] i965: add __DRI2_BLOB support and set cache functions
Jordan Justen
jordan.l.justen at intel.com
Wed Jan 31 09:27:11 UTC 2018
On 2018-01-30 23:17:06, Tapani Pälli wrote:
> v2: adjust to change that moved cache from ctx to screen
>
> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
> ---
> src/mesa/drivers/dri/i965/intel_screen.c | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
> index e1e520bc89..2c445af1e4 100644
> --- a/src/mesa/drivers/dri/i965/intel_screen.c
> +++ b/src/mesa/drivers/dri/i965/intel_screen.c
> @@ -36,6 +36,7 @@
> #include "main/version.h"
> #include "swrast/s_renderbuffer.h"
> #include "util/ralloc.h"
> +#include "util/disk_cache.h"
> #include "brw_defines.h"
> #include "brw_state.h"
> #include "compiler/nir/nir.h"
> @@ -1494,6 +1495,19 @@ brw_query_renderer_string(__DRIscreen *dri_screen,
> return -1;
> }
>
> +static void
> +brw_set_cache_funcs(__DRIscreen *dri_screen,
> + __DRIblobCacheSet set, __DRIblobCacheGet get)
> +{
> + const struct intel_screen *const screen =
> + (struct intel_screen *) dri_screen->driverPrivate;
> +
> + if (!screen->disk_cache)
> + return;
Could this cause us to fail tests if the disk cache is not enabled?
For example, if they test setting the functions to NULL, or set
multiple times?
-Jordan
> +
> + disk_cache_set_callbacks(screen->disk_cache, set, get);
> +}
> +
> static const __DRI2rendererQueryExtension intelRendererQueryExtension = {
> .base = { __DRI2_RENDERER_QUERY, 1 },
>
> @@ -1505,6 +1519,11 @@ static const __DRIrobustnessExtension dri2Robustness = {
> .base = { __DRI2_ROBUSTNESS, 1 }
> };
>
> +static const __DRI2blobExtension intelBlobExtension = {
> + .base = { __DRI2_BLOB, 1 },
> + .set_cache_funcs = brw_set_cache_funcs
> +};
> +
> static const __DRIextension *screenExtensions[] = {
> &intelTexBufferExtension.base,
> &intelFenceExtension.base,
> @@ -1513,6 +1532,7 @@ static const __DRIextension *screenExtensions[] = {
> &intelRendererQueryExtension.base,
> &dri2ConfigQueryExtension.base,
> &dri2NoErrorExtension.base,
> + &intelBlobExtension.base,
> NULL
> };
>
> @@ -1525,6 +1545,7 @@ static const __DRIextension *intelRobustScreenExtensions[] = {
> &dri2ConfigQueryExtension.base,
> &dri2Robustness.base,
> &dri2NoErrorExtension.base,
> + &intelBlobExtension.base,
> NULL
> };
>
> --
> 2.13.6
>
More information about the mesa-dev
mailing list