diff options
author | Thomas Hellstrom <thellstrom@vmware.com> | 2011-09-01 20:18:45 +0000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-09-06 11:51:12 +0100 |
commit | 2ae7b03c26948eddf7c0dd80e1f4eb09140f2698 (patch) | |
tree | 238191669a8bd282f65217a27f3f2986086a5d96 /drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | |
parent | ae2a104058e217548215bfe6c6c8a98752139c29 (diff) | |
download | lwn-2ae7b03c26948eddf7c0dd80e1f4eb09140f2698.tar.gz lwn-2ae7b03c26948eddf7c0dd80e1f4eb09140f2698.zip |
vmwgfx: Bump major
This bumps driver major version as a result of previous incompatible
interface changes.
In addition, a leftover command definition is removed from the
vmwgfx_drm.h header.
Also a strict version check is enforced on the exebuf ioctl.
This is intended to be the last major bump before exiting staging.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c')
-rw-r--r-- | drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c index d48ee89a5190..fa26e647f488 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c @@ -734,6 +734,20 @@ int vmw_execbuf_ioctl(struct drm_device *dev, void *data, struct vmw_fence_obj *fence; uint32_t handle; + /* + * This will allow us to extend the ioctl argument while + * maintaining backwards compatibility: + * We take different code paths depending on the value of + * arg->version. + */ + + if (unlikely(arg->version != DRM_VMW_EXECBUF_VERSION)) { + DRM_ERROR("Incorrect execbuf version.\n"); + DRM_ERROR("You're running outdated experimental " + "vmwgfx user-space drivers."); + return -EINVAL; + } + ret = ttm_read_lock(&vmaster->lock, true); if (unlikely(ret != 0)) return ret; |