Commit bbaac135 authored by Sidong Yang's avatar Sidong Yang Committed by Gerd Hoffmann

drm/qxl: Replace deprecated function in qxl_display

Replace deprecated function drm_modeset_lock/unlock_all with
helper function DRM_MODESET_LOCK_ALL_BEGIN/END.
Signed-off-by: default avatarSidong Yang <realwakka@gmail.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20200524022624.10363-1-realwakka@gmail.comSigned-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
parent 77cf3a68
......@@ -162,7 +162,8 @@ static void qxl_update_offset_props(struct qxl_device *qdev)
void qxl_display_read_client_monitors_config(struct qxl_device *qdev)
{
struct drm_device *dev = &qdev->ddev;
int status, retries;
struct drm_modeset_acquire_ctx ctx;
int status, retries, ret;
for (retries = 0; retries < 10; retries++) {
status = qxl_display_copy_rom_client_monitors_config(qdev);
......@@ -183,9 +184,9 @@ void qxl_display_read_client_monitors_config(struct qxl_device *qdev)
return;
}
drm_modeset_lock_all(dev);
DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE, ret);
qxl_update_offset_props(qdev);
drm_modeset_unlock_all(dev);
DRM_MODESET_LOCK_ALL_END(ctx, ret);
if (!drm_helper_hpd_irq_event(dev)) {
/* notify that the monitor configuration changed, to
adjust at the arbitrary resolution */
......@@ -403,18 +404,17 @@ static int qxl_framebuffer_surface_dirty(struct drm_framebuffer *fb,
struct qxl_device *qdev = to_qxl(fb->dev);
struct drm_clip_rect norect;
struct qxl_bo *qobj;
struct drm_modeset_acquire_ctx ctx;
bool is_primary;
int inc = 1;
int inc = 1, ret;
drm_modeset_lock_all(fb->dev);
DRM_MODESET_LOCK_ALL_BEGIN(fb->dev, ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE, ret);
qobj = gem_to_qxl_bo(fb->obj[0]);
/* if we aren't primary surface ignore this */
is_primary = qobj->shadow ? qobj->shadow->is_primary : qobj->is_primary;
if (!is_primary) {
drm_modeset_unlock_all(fb->dev);
return 0;
}
if (!is_primary)
goto out_lock_end;
if (!num_clips) {
num_clips = 1;
......@@ -430,7 +430,8 @@ static int qxl_framebuffer_surface_dirty(struct drm_framebuffer *fb,
qxl_draw_dirty_fb(qdev, fb, qobj, flags, color,
clips, num_clips, inc, 0);
drm_modeset_unlock_all(fb->dev);
out_lock_end:
DRM_MODESET_LOCK_ALL_END(ctx, ret);
return 0;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment