OSDN Git Service

drm/syncobj: add missing error return code in drm_syncobj_transfer_to_timeline()
authorYang Yingliang <yangyingliang@huawei.com>
Mon, 13 Jun 2022 06:34:54 +0000 (14:34 +0800)
committerChristian König <christian.koenig@amd.com>
Mon, 13 Jun 2022 06:54:16 +0000 (08:54 +0200)
If dma_fence_unwrap_merge() fails, it should return error code
in drm_syncobj_transfer_to_timeline()

Fixes: ec8d985ff26f ("drm: use dma_fence_unwrap_merge() in drm_syncobj")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220613063454.2609364-1-yangyingliang@huawei.com
drivers/gpu/drm/drm_syncobj.c

index bbad9e4..0c2be83 100644 (file)
@@ -874,8 +874,10 @@ static int drm_syncobj_transfer_to_timeline(struct drm_file *file_private,
 
        fence = dma_fence_unwrap_merge(tmp);
        dma_fence_put(tmp);
-       if (!fence)
+       if (!fence) {
+               ret = -ENOMEM;
                goto err_put_timeline;
+       }
 
        chain = dma_fence_chain_alloc();
        if (!chain) {