lkml.org 
[lkml]   [2010]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 09/30] staging/vme: fill in struct device's .release, even if it's a NOOP
    On Wed, Oct 27, 2010 at 11:54:55 +0100, Martyn Welch wrote:
    > On 26/10/10 02:10, Emilio G. Cota wrote:
    > > From: Emilio G. Cota <cota@braap.org>
    > >
    > > Without it we get 32 warnings, one per device being released, when
    > > removing a bridge module.
    > >
    > > After applying this patch, bridge modules can at last be removed
    > > without any apparent hiccup.
    > >
    > > [Note: tested only on the tsi148, it's the only bridge I've got]
    > >
    >
    > I guess this is an artifact of the current lack of refcounting?

    No, that's orthogonal to this. This has to do with the way the
    devices are allocated.

    > This is definitely an issue, however I don't think masking it by adding
    > an empty function is the correct way to go.

    We're not masking anything. The release method is there to free the
    struct it protects when its refcount goes to zero; however, in this
    case the struct wasn't allocated dynamically--the 32 devices are
    stored in struct vme_bridge in an array--and therefore there's
    nothing to do in .release, since struct vme_bridge is freed
    elsewhere.

    While it's true that empty .release methods are usually frowned
    upon (as stated in Documentation/kobject.txt), due to the way
    things are done here it actually makes sense to have an
    empty .release.

    Hope this helps

    Emilio




    \
     
     \ /
      Last update: 2010-10-27 16:49    [W:0.022 / U:4.392 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site