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 <chris@xxxxxxxxxxxxxxxxxx> wrote:
Quoting Marius Vlad (2017-09-04 16:16:41)
> From: Marius Vlad <marius.vlad0@xxxxxxxxx>
>
> 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 Why?
> 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.
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@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel