mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 08:50:13 +01:00
iris: ref/unref the GLSL type singleton in screen_create/destroy
Otherwise, we can run into trouble if the driver is dynamically loaded via pipe-loader. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6405>
This commit is contained in:
parent
b9678aa17d
commit
d0a8ad77e9
1 changed files with 4 additions and 0 deletions
|
|
@ -51,6 +51,7 @@
|
|||
#include "iris_pipe.h"
|
||||
#include "iris_resource.h"
|
||||
#include "iris_screen.h"
|
||||
#include "compiler/glsl_types.h"
|
||||
#include "intel/compiler/brw_compiler.h"
|
||||
#include "intel/common/gen_gem.h"
|
||||
#include "intel/common/gen_l3_config.h"
|
||||
|
|
@ -521,6 +522,7 @@ iris_get_timestamp(struct pipe_screen *pscreen)
|
|||
void
|
||||
iris_screen_destroy(struct iris_screen *screen)
|
||||
{
|
||||
glsl_type_singleton_decref();
|
||||
iris_bo_unreference(screen->workaround_bo);
|
||||
u_transfer_helper_destroy(screen->base.transfer_helper);
|
||||
iris_bufmgr_unref(screen->bufmgr);
|
||||
|
|
@ -775,5 +777,7 @@ iris_screen_create(int fd, const struct pipe_screen_config *config)
|
|||
pscreen->get_driver_query_group_info = iris_get_monitor_group_info;
|
||||
pscreen->get_driver_query_info = iris_get_monitor_info;
|
||||
|
||||
glsl_type_singleton_init_or_ref();
|
||||
|
||||
return pscreen;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue