drm/msm/gem: Split out submit_unpin_objects() helper
authorRob Clark <robdclark@chromium.org>
Tue, 21 Nov 2023 00:38:48 +0000 (16:38 -0800)
committerRob Clark <robdclark@chromium.org>
Sun, 10 Dec 2023 18:23:13 +0000 (10:23 -0800)
commit2d7d2c4e84802485a1e765bd0732d41526dcf25c
tree57b92f0c67adf2b7b86ec32558d859cc2081b636
parentceab575cafed594fb3cee1bec01a0e4ed5e2d752
drm/msm/gem: Split out submit_unpin_objects() helper

Untangle unpinning from unlock/unref loop.  The unpin only happens in
error paths so it is easier to decouple from the normal unlock path.

Since we never have an intermediate state where a subset of buffers
are pinned (ie. we never bail out of the pin or unpin loops) we can
replace the bo state flag bit with a global flag in the submit.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/568335/
drivers/gpu/drm/msm/msm_gem.h
drivers/gpu/drm/msm/msm_gem_submit.c
drivers/gpu/drm/msm/msm_ringbuffer.c