[Outreachy kernel] [PATCH 1/2] drm/amd/amdgpu/amdgpu_device.c: Replace drm_modeset_*_all with DRM_MODESET_LOCK_ALL_*
Julia Lawall
julia.lawall at inria.fr
Mon Apr 19 13:08:51 UTC 2021
On Mon, 19 Apr 2021, Fabio M. De Francesco wrote:
> Replace the deprecated API with new helpers, according to the TODO list
> of the DRM subsystem.
The commit message will perhaps not be very meaningful one year from now.
You could say for example DRM_MODESET_LOCK_ALL_BEGIN was introduced in
commit XXX (there is a proper format for referring to other commits) for
what purpose. And then say that you are making the replacement.
Actually, I'm a little surprised to see something that looks like a
function call be replaced by something that looks like a macro. Maybe it
was a macro all along, and this is just making that more clear. In any
case, if I were to look at this commit, I would appreciate a little more
context information.
julia
>
> Signed-off-by: Fabio M. De Francesco <fmdefrancesco at gmail.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 18 ++++++++++++------
> 1 file changed, 12 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 6447cd6ca5a8..e1a71579f8e6 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -32,6 +32,7 @@
> #include <linux/slab.h>
>
> #include <drm/drm_atomic_helper.h>
> +#include <drm/drm_drv.h>
> #include <drm/drm_probe_helper.h>
> #include <drm/amdgpu_drm.h>
> #include <linux/vgaarb.h>
> @@ -3694,14 +3695,17 @@ int amdgpu_device_suspend(struct drm_device *dev, bool fbcon)
>
> if (!amdgpu_device_has_dc_support(adev)) {
> /* turn off display hw */
> - drm_modeset_lock_all(dev);
> + struct drm_modeset_acquire_ctx ctx;
> + int ret;
> +
> + DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, 0, ret);
> drm_connector_list_iter_begin(dev, &iter);
> drm_for_each_connector_iter(connector, &iter)
> drm_helper_connector_dpms(connector,
> DRM_MODE_DPMS_OFF);
> drm_connector_list_iter_end(&iter);
> - drm_modeset_unlock_all(dev);
> - /* unpin the front buffers and cursors */
> + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret);
> + /* unpin the front buffers and cursors */
> list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
> struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
> struct drm_framebuffer *fb = crtc->primary->fb;
> @@ -3830,19 +3834,21 @@ int amdgpu_device_resume(struct drm_device *dev, bool fbcon)
> /* blat the mode back in */
> if (fbcon) {
> if (!amdgpu_device_has_dc_support(adev)) {
> + struct drm_modeset_acquire_ctx ctx;
> + int ret;
> +
> /* pre DCE11 */
> drm_helper_resume_force_mode(dev);
>
> /* turn on display hw */
> - drm_modeset_lock_all(dev);
> + DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, 0, ret);
>
> drm_connector_list_iter_begin(dev, &iter);
> drm_for_each_connector_iter(connector, &iter)
> drm_helper_connector_dpms(connector,
> DRM_MODE_DPMS_ON);
> drm_connector_list_iter_end(&iter);
> -
> - drm_modeset_unlock_all(dev);
> + DRM_MODESET_LOCK_ALL_END(dev, ctx, ret);
> }
> amdgpu_fbdev_set_suspend(adev, 0);
> }
> --
> 2.31.1
>
> --
> You received this message because you are subscribed to the Google Groups "outreachy-kernel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to outreachy-kernel+unsubscribe at googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/outreachy-kernel/20210419122059.738-2-fmdefrancesco%40gmail.com.
>
More information about the dri-devel
mailing list