On 04/18, Chris Wilson wrote:
> Quoting Rodrigo Siqueira (2019-04-18 15:01:49)
> > +bool kms_has_vblank(int fd)
> > +{
> > + drmVBlank dummy_vbl;
> > +
> > + memset(&dummy_vbl, 0, sizeof(drmVBlank));
> > + dummy_vbl.request.type = DRM_VBLANK_RELATIVE;
> > +
> > + drmWaitVBlank(fd, &dummy_vbl);
> > + return (errno != EOPNOTSUPP);
>
> errno is only set on error. It is conceivably that drmWaitVBlank()
> suceeed but errno is still set to EOPNOTSUPP from an earlier syscall.
> -Chris
Nice catch!
Before I send a V7, how about this fix:
bool kms_has_vblank(int fd)
{
...
errno = 0;
drmWaitVBlank(fd, &dummy_vbl);
return (errno != EOPNOTSUPP);
}
--
Rodrigo Siqueira
https://siqueira.tech
signature.asc
Description: PGP signature
_______________________________________________ Intel-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/intel-gfx
