未验证 提交 9fbc8c4f 编写于 作者: O openeuler-ci-bot 提交者: Gitee

!360 [sync] PR-338: Fix virtio-gpu free issues

Merge Pull Request from: @openeuler-sync-bot 
 

Origin pull request: 
https://gitee.com/openeuler/kernel/pulls/338 
 
This PR is to backport upstream fix for virtio-gpu free issues on probe failure

issues:
First appearance in stratovirt test as a guest:
issue number:I66GGJ
Corresponding Kernel Issue
issue number:I688N6 
 
Link:https://gitee.com/openeuler/kernel/pulls/360 

Reviewed-by: Kevin Zhu <zhukeqian1@huawei.com> 
Reviewed-by: Zheng Zengkai <zhengzengkai@huawei.com> 
Signed-off-by: Zheng Zengkai <zhengzengkai@huawei.com> 
......@@ -122,11 +122,13 @@ static int virtio_gpu_probe(struct virtio_device *vdev)
ret = drm_dev_register(dev, 0);
if (ret)
goto err_free;
goto err_deinit;
drm_fbdev_generic_setup(vdev->priv, 32);
return 0;
err_deinit:
virtio_gpu_deinit(dev);
err_free:
drm_dev_put(dev);
return ret;
......
......@@ -240,6 +240,9 @@ void virtio_gpu_release(struct drm_device *dev)
{
struct virtio_gpu_device *vgdev = dev->dev_private;
if (!vgdev)
return;
virtio_gpu_modeset_fini(vgdev);
virtio_gpu_free_vbufs(vgdev);
virtio_gpu_cleanup_cap_cache(vgdev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册