On Sat, May 16, 2026 at 01:06:15PM +0200, Julian Orth wrote: > This device makes the DRM_IOCTL_SYNCOBJ_* ioctls available via a > dedicated device. This allows applications to use syncobjs without > having to open device nodes in /dev/dri, on systems that don't have any > such nodes, or on systems whose devices don't support the > DRIVER_SYNCOBJ_TIMELINE feature. > > Wayland uses syncobjs as its buffer synchronization mechanism. Most > compositors use the DRM_IOCTL_SYNCOBJ_EVENTFD ioctl to perform a pure > CPU wait for syncobj point. DRM devices are not involved in this process > except insofar that a DRM device needs to be used to access the ioctl. > > Similarly, a software-rendered client might perform rendering on a > dedicated thread and use the wayland syncobj protocol to submit frames > before they finish rendering. Again, this does not involve DRM devices > except insofar ... as above. > > As an added benefit, this device removes the need to translate between > file descriptors and handles. > > Signed-off-by: Julian Orth <[email protected]> > --- > Documentation/userspace-api/ioctl/ioctl-number.rst | 1 + > drivers/misc/Kconfig | 10 + > drivers/misc/Makefile | 1 + > drivers/misc/syncobj.c | 404 > +++++++++++++++++++++ > include/uapi/linux/syncobj.h | 75 ++++ > 5 files changed, 491 insertions(+) > > diff --git a/Documentation/userspace-api/ioctl/ioctl-number.rst > b/Documentation/userspace-api/ioctl/ioctl-number.rst > index 331223761fff..5e140ae5735e 100644 > --- a/Documentation/userspace-api/ioctl/ioctl-number.rst > +++ b/Documentation/userspace-api/ioctl/ioctl-number.rst > @@ -395,6 +395,7 @@ Code Seq# Include File > Comments > > <mailto:[email protected]> > 0xCC 00-0F drivers/misc/ibmvmc.h > pseries VMC driver > 0xCD 01 linux/reiserfs_fs.h Dead > since 6.13 > +0xCD 00-0F uapi/linux/syncobj.h > 0xCE 01-02 uapi/linux/cxl_mem.h > Compute Express Link Memory Devices > 0xCF 02 fs/smb/client/cifs_ioctl.h > 0xDD 00-3F ZFCP > device driver see drivers/s390/scsi/ > diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig > index 00683bf06258..c1e7749bd356 100644 > --- a/drivers/misc/Kconfig > +++ b/drivers/misc/Kconfig > @@ -644,6 +644,16 @@ config MCHP_LAN966X_PCI > - lan966x-miim (MDIO_MSCC_MIIM) > - lan966x-switch (LAN966X_SWITCH) > > +config SYNCOBJ_DEV > + tristate "DRM syncobj device (/dev/syncobj)" > + depends on DRM
If this is a drm-only thing, then please put it in the drm subdirs, not in drivers/misc/ as that would imply that I have to maintain this, not the DRM developers :) thanks, greg k-h
