lkml.org 
[lkml]   [2009]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 06/64] driver core: add BUS_NOTIFY_UNBOUND_DRIVER event
    Date
    From: Joerg Roedel <joerg.roedel@amd.com>

    This patch adds a new bus notifier event which is emitted _after_ a
    device is removed from its driver. This event will be used by the
    dma-api debug code to check if a driver has released all dma allocations
    for that device.

    Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    ---
    drivers/base/dd.c | 4 ++++
    include/linux/device.h | 2 ++
    2 files changed, 6 insertions(+), 0 deletions(-)

    diff --git a/drivers/base/dd.c b/drivers/base/dd.c
    index 742cbe6..efd00de 100644
    --- a/drivers/base/dd.c
    +++ b/drivers/base/dd.c
    @@ -320,6 +320,10 @@ static void __device_release_driver(struct device *dev)
    devres_release_all(dev);
    dev->driver = NULL;
    klist_remove(&dev->p->knode_driver);
    + if (dev->bus)
    + blocking_notifier_call_chain(&dev->bus->p->bus_notifier,
    + BUS_NOTIFY_UNBOUND_DRIVER,
    + dev);
    }
    }

    diff --git a/include/linux/device.h b/include/linux/device.h
    index a4a7b10..4410464 100644
    --- a/include/linux/device.h
    +++ b/include/linux/device.h
    @@ -114,6 +114,8 @@ extern int bus_unregister_notifier(struct bus_type *bus,
    #define BUS_NOTIFY_BOUND_DRIVER 0x00000003 /* driver bound to device */
    #define BUS_NOTIFY_UNBIND_DRIVER 0x00000004 /* driver about to be
    unbound */
    +#define BUS_NOTIFY_UNBOUND_DRIVER 0x00000005 /* driver is unbound
    + from the device */

    extern struct kset *bus_get_kset(struct bus_type *bus);
    extern struct klist *bus_get_device_klist(struct bus_type *bus);
    --
    1.6.3.2


    \
     
     \ /
      Last update: 2009-06-16 07:59    [W:0.019 / U:93.032 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site