From: Michel Dänzer <michel.daenzer@xxxxxxx> This series addresses https://bugs.freedesktop.org/105381 and is mostly inspired by the amdgpu driver. Patches 1 & 2 clean up things I noticed being unused while working on this series. Patches 3-5 are struct radeon_surface related cleanups. Patches 6-8 are flush/finish related preparations. Patch 9 lays the ground work for patch 10, which finally switches the glamor code to using GBM for BO allocation when possible. Jammy Zhou (1): Remove throttling from radeon_dri2_copy_region2 Michel Dänzer (9): Drop unused drmmode_create_bo_pixmap surface parameter EXA: Remove old RADEONEXACreatePixmap hook Only initialize libdrm_radeon surface manager for >= R600 glamor: Don't store radeon_surfaces in pixmaps Factor out radeon_surface_initialize helper Move flush from radeon_scanout_do_update to its callers Refactor radeon_finish helper Add struct radeon_buffer glamor: Use GBM for BO allocation when possible configure.ac | 10 + src/Makefile.am | 4 +- src/drmmode_display.c | 252 ++++++----------- src/drmmode_display.h | 2 +- src/evergreen_exa.c | 41 ++- src/evergreen_state.h | 2 - src/evergreen_textured_videofuncs.c | 2 +- src/r600_exa.c | 41 ++- src/r600_state.h | 2 - src/r600_textured_videofuncs.c | 2 +- src/radeon.h | 61 ++--- src/radeon_bo_helper.c | 404 ++++++++++++++++++---------- src/radeon_bo_helper.h | 55 +++- src/radeon_dri2.c | 49 +--- src/radeon_dri3.c | 15 +- src/radeon_exa.c | 46 +--- src/radeon_exa_funcs.c | 44 +-- src/radeon_exa_shared.c | 2 +- src/radeon_exa_shared.h | 3 +- src/radeon_glamor.c | 57 ++-- src/radeon_glamor.h | 28 +- src/radeon_glamor_wrappers.c | 27 +- src/radeon_kms.c | 202 ++++++-------- src/radeon_present.c | 4 +- src/radeon_textured_videofuncs.c | 24 +- 25 files changed, 705 insertions(+), 674 deletions(-) -- 2.18.0