This error code typically indicated that a buffer object that was referenced
by the command stream was being used for CPU access by another client.
The correct action here is to retry after a while. Use usleep() until we
have proper kernel support for this wait.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
offsetof(struct drm_vmw_execbuf_arg, context_handle);
do {
ret = drmCommandWrite(vws->ioctl.drm_fd, DRM_VMW_EXECBUF, &arg, argsize);
- } while(ret == -ERESTART);
+ if (ret == -EBUSY)
+ usleep(1000);
+ } while(ret == -ERESTART || ret == -EBUSY);
if (ret) {
vmw_error("%s error %s.\n", __FUNCTION__, strerror(-ret));
abort();