render/drm_syncobj: use drmSyncobjEventfd()

Avoids using a raw IOCTL directly.

This function was introduced way back in libdrm 2.4.116.
This commit is contained in:
Simon Ser 2026-03-27 18:20:40 +01:00 committed by Kenny Levinsen
parent a1ed6fca52
commit 334019f839

View file

@ -222,14 +222,8 @@ bool wlr_drm_syncobj_timeline_waiter_init(struct wlr_drm_syncobj_timeline_waiter
return false;
}
struct drm_syncobj_eventfd syncobj_eventfd = {
.handle = timeline->handle,
.flags = flags,
.point = point,
.fd = ev_fd,
};
if (drmIoctl(timeline->drm_fd, DRM_IOCTL_SYNCOBJ_EVENTFD, &syncobj_eventfd) != 0) {
wlr_log_errno(WLR_ERROR, "DRM_IOCTL_SYNCOBJ_EVENTFD failed");
if (drmSyncobjEventfd(timeline->drm_fd, timeline->handle, point, ev_fd, flags) != 0) {
wlr_log_errno(WLR_ERROR, "drmSyncobjEventfd() failed");
close(ev_fd);
return false;
}