mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-19 11:00:42 +01:00
i965: Fix memory leaks in brw_upload_cs_work_groups_surface().
This was taking a reference to the 64kB upload buffer and never returning it, leaking a reference each time this atom triggered. This leaked lots of 64kB upload BOs, eventually running us out of of VMA space. This would usually happen when using mpv to watch a movie, after 20-40 minutes. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110134 Fixes:63d7b33f51i965/cs: Setup surface binding for gl_NumWorkGroups Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> (cherry picked from commit3f60810de0)
This commit is contained in:
parent
1fc65774e9
commit
f0e147bd47
1 changed files with 5 additions and 0 deletions
|
|
@ -1685,6 +1685,11 @@ brw_upload_cs_work_groups_surface(struct brw_context *brw)
|
|||
ISL_FORMAT_RAW,
|
||||
3 * sizeof(GLuint), 1,
|
||||
RELOC_WRITE);
|
||||
|
||||
/* The state buffer now holds a reference to our upload, drop ours. */
|
||||
if (bo != brw->compute.num_work_groups_bo)
|
||||
brw_bo_unreference(bo);
|
||||
|
||||
brw->ctx.NewDriverState |= BRW_NEW_SURFACES;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue