drm/vmwgfx: Emulate legacy shaders on guest-backed devices v2
Command stream legacy shader creation and destruction is replaced by NOPs in the command stream, and instead guest-backed shaders are created and destroyed as part of the command validation process. v2: Removed some stray debug messages. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
This commit is contained in:
@@ -941,6 +941,7 @@ static void vmw_postclose(struct drm_device *dev,
|
||||
drm_master_put(&vmw_fp->locked_master);
|
||||
}
|
||||
|
||||
vmw_compat_shader_man_destroy(vmw_fp->shman);
|
||||
ttm_object_file_release(&vmw_fp->tfile);
|
||||
kfree(vmw_fp);
|
||||
}
|
||||
@@ -960,11 +961,17 @@ static int vmw_driver_open(struct drm_device *dev, struct drm_file *file_priv)
|
||||
if (unlikely(vmw_fp->tfile == NULL))
|
||||
goto out_no_tfile;
|
||||
|
||||
vmw_fp->shman = vmw_compat_shader_man_create(dev_priv);
|
||||
if (IS_ERR(vmw_fp->shman))
|
||||
goto out_no_shman;
|
||||
|
||||
file_priv->driver_priv = vmw_fp;
|
||||
dev_priv->bdev.dev_mapping = dev->dev_mapping;
|
||||
|
||||
return 0;
|
||||
|
||||
out_no_shman:
|
||||
ttm_object_file_release(&vmw_fp->tfile);
|
||||
out_no_tfile:
|
||||
kfree(vmw_fp);
|
||||
return ret;
|
||||
|
Reference in New Issue
Block a user