Indeed, we argued at first to let the driver handle the ioctls directly,
but we would like to use the DRM interface if possible.

On Mon, Sep 4, 2017 at 6:26 PM, Chris Wilson <ch...@chris-wilson.co.uk>
wrote:

> Quoting Marius Vlad (2017-09-04 16:16:41)
> > From: Marius Vlad <marius.vl...@gmail.com>
> >
> > Currently driver-specific ioctls have to be declared static and are
> confined to
> > DRM core driver. This patch series provides the means to remove those
> constrains
> > and allow to register driver-specific ioctls dynamically by keeping a
> list of
> > registered ioctls in struct drm_driver, then each component of the
> driver can
> > then register its own specific ioctls using this interface.
> >
> > The driver must assign ioctl_register/ioctl_deregister in
> > its drm_driver structure in order to make use of it.
> >
> > While SoC drivers benefit the most from this approach (by not polluting
> DRM core
> > driver and allowing sub drivers to implement and register driver-specific
> > ioctls dynamically), further patches shows how easy is to convert
> drm/i915 to
> > this approach by registering GEM and perf ioctls separately.
>
> Why?
>
> You do not have to use drm_ioctl directly... Avoiding it would reduce
> our ioctl overhead considerably, for example reducing busy_ioctl from
> around 110ns to around 45ns.
> -Chris
>



-- 
Marius Vlad
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to