[PATCH 0/5] DRM device-alloc cleanup
Dave Airlie
airlied at gmail.com
Wed Oct 9 07:31:41 CEST 2013
On Wed, Oct 2, 2013 at 7:23 PM, David Herrmann <dh.herrmann at gmail.com> wrote:
> Hi
>
> This cleans up the bus drivers in DRM. Instead of copying the device alloc/free
> semantics into each bus driver (drm_{pci,platform,usb}.c) we now have a central
> place in drm_stub.c.
>
> This introduces drm_dev_{alloc,free,register,unregister}(). They have the same
> semantics as most other kernel subsystems. *_alloc() allocates a new device and
> populates the static fields and sub-objects. *_free() frees an unregistered
> object allocated via *_alloc(). *_register() registers a DRM device and
> *_unregister() obviously unregisters a DRM device. A *_free() is still needed
> after calling *_unregister() (same as for "struct device"). No ref-counting is
> added as it is not required by any driver.
>
> Note that the bus drivers are modified to use the new helpers directly. However,
> I didn't modify the drivers to use *_unregister() and *_free() directly.
> Instead, the drm_put_dev() helper was modified to use these. Reason for that is
> that I have pending patches to make device hotplugging safer regarding mmaps.
> But these aren't ready, yet. Hopefully I can get them ready for rc5 or rc6.
>
> Tested on nouveau.
>
Okay I've merged this series, a follow-on to fix the AGP bits like
Daniel suggested would be good.
Dave.
More information about the dri-devel
mailing list