[PATCH 0/4] RFC: drm: Allow driver-specific ioctls to be registered
Chris Wilson
chris at chris-wilson.co.uk
Mon Sep 4 15:26:02 UTC 2017
Quoting Marius Vlad (2017-09-04 16:16:41)
> From: Marius Vlad <marius.vlad0 at 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
More information about the dri-devel
mailing list