Browse Source

Merge "disp: msm: sde: retry preclose commit in cases of -ERESTARTSYS"

qctecmdr 3 years ago
parent
commit
419816332d
1 changed files with 5 additions and 2 deletions
  1. 5 2
      msm/sde/sde_kms.c

+ 5 - 2
msm/sde/sde_kms.c

@@ -2559,7 +2559,10 @@ error:
 		list_for_each_entry_safe(fb, tfb, &fbs, filp_head)
 			list_move_tail(&fb->filp_head, &file->fbs);
 
-		SDE_ERROR("atomic commit failed in preclose, ret:%d\n", ret);
+		if (ret == -EDEADLK || ret == -ERESTARTSYS)
+			SDE_DEBUG("atomic commit failed in preclose, ret:%d\n", ret);
+		else
+			SDE_ERROR("atomic commit failed in preclose, ret:%d\n", ret);
 		goto end;
 	}
 
@@ -2608,7 +2611,7 @@ retry:
 
 	for (i = 0; i < TEARDOWN_DEADLOCK_RETRY_MAX; i++) {
 		ret = _sde_kms_remove_fbs(sde_kms, file, state);
-		if (ret != -EDEADLK)
+		if (ret != -EDEADLK && ret != -ERESTARTSYS)
 			break;
 		drm_atomic_state_clear(state);
 		drm_modeset_backoff(&ctx);