From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 0/5] DRM device-alloc cleanup Date: Wed, 9 Oct 2013 10:05:07 +0200 Message-ID: <20131009080507.GL8303@phenom.ffwll.local> References: <1380705818-4065-1-git-send-email-dh.herrmann@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-ee0-f46.google.com (mail-ee0-f46.google.com [74.125.83.46]) by gabe.freedesktop.org (Postfix) with ESMTP id E3741E5BFB for ; Wed, 9 Oct 2013 01:04:49 -0700 (PDT) Received: by mail-ee0-f46.google.com with SMTP id c13so199744eek.19 for ; Wed, 09 Oct 2013 01:04:48 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: Dave Airlie Cc: dri-devel List-Id: dri-devel@lists.freedesktop.org On Wed, Oct 09, 2013 at 04:00:00PM +1000, Dave Airlie wrote: > On Wed, Oct 9, 2013 at 3:31 PM, Dave Airlie wrote: > > On Wed, Oct 2, 2013 at 7:23 PM, David Herrmann 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. > > Actually this oopses i915 on startup, I fixed up the lack of passing > flags into drm_dev_register, > so it can be passed to load, and it seems to work now, I've squashed > my fix into the series in my tree > > please read/review the series for your learning pleasure. Oops, shame on me for failing to spot the unconditional 0 passed for flags. i915.ko really doesn't like that ;-) -Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch