Message ID | 20200730203642.17553-1-nicholas.kazlauskas@amd.com (mailing list archive) |
---|---|
Headers | show |
Series | drm/amd/display: Drop DRM private objects from amdgpu_dm | expand |
On Thu, Jul 30, 2020 at 04:36:35PM -0400, Nicholas Kazlauskas wrote: > Based on the analysis of the bug from [1] the best course of action seems > to be swapping off of DRM private objects back to subclassing DRM atomic > state instead. > > This patch series implements this change, but not yet the other changes > suggested in the threads from that bug - these will come later. > > CCing dri-devel per Daniel's suggestion since this issue brought > some interesting misuse of private objects. I ended up reading around a bit, and it feels like the sub-objects might make a reasonable private state structure perhaps. Like dc_stream_state, at least when reading around in e.g. dc_remove_stream_from_ctx. But would need to come up with a plan how to integrate this on the other os side of DC I guess :-) Anyway I'd say more evidence that dc_state needs to subclass drm_atomic_state. Another thing I wondered is whether we should rename drm_atomic_state to drm_atomic_state_update, so it's clear it's the container with the updated states, not a real state object thing itself. -Daniel > > [1] https://bugzilla.kernel.org/show_bug.cgi?id=207383 > > Nicholas Kazlauskas (7): > drm/amd/display: Store tiling_flags and tmz_surface on dm_plane_state > drm/amd/display: Reset plane when tiling flags change > drm/amd/display: Avoid using unvalidated tiling_flags and tmz_surface > in prepare_planes > drm/amd/display: Use validated tiling_flags and tmz_surface in > commit_tail > drm/amd/display: Reset plane for anything that's not a FAST update > drm/amd/display: Drop dm_determine_update_type_for_commit > drm/amd/display: Replace DRM private objects with subclassed DRM > atomic state > > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 967 ++++++------------ > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 13 +- > 2 files changed, 343 insertions(+), 637 deletions(-) > > -- > 2.25.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel