On Thu, Dec 19, 2013 at 4:56 AM, Mark Kettenis <mark.kette...@xs4all.nl> wrote: > Annying implementation details between ioctls in OpenBSD and Linux. > On OpenBSD we don't copyout the ioctl arguments back to userland if > the ioctl fails, whereas Linux does. And of course the Intel > engineers designed an ioctl (DRM_IOCTL_I915_GEM_WAIT) that relies on > this :(. If interrupted (so the ioctl fails with EINTR) it is > supposed to return the time remaining, such that userland can restart > without running the risk of waiting until the death of the universe. > Not entirely unreasonable, but nevertheless rather annoying.
I guess they took a different lesson from the mess that resulted from Linux's select() actually updating the supplied timeout. And they also ignored how pthread_cond_timedwait() uses an absolute timeout to solve this. <sigh> Philip Guenther