Re: [PATCH] drm/msm: return fence_fd = -1 if gem_submit fails

From: Chris Wilson
Date: Mon Dec 12 2016 - 15:42:26 EST


On Mon, Dec 12, 2016 at 05:41:08PM -0200, Gustavo Padovan wrote:
> From: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
>
> Previously we were returning garbage here, fix it by setting it to -1
> before the first possible point of failure.

The convention is that on error paths you do not modify user inputs. In
particular, consider EINTR where the usual pattern (e.g. drmIoctl) is

do {
err = ioctl(fd, SUBMIT, arg);
} while (err == -EINTR);

If you modify the in fence before you consume it, you can't recreate it
after handling the signal.
-Chris

--
Chris Wilson, Intel Open Source Technology Centre