lkml.org 
[lkml]   [2011]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 06/40] Staging: hv: vmbus: Introduce a lock to protect the ext field in hv_device
    Date
    The current mechanism for handling references in broken. 
    Introduce a lock to protect the ext field in hv_device.

    Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
    Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
    Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
    Signed-off-by: Hank Janssen <hjanssen@microsoft.com>
    ---
    drivers/staging/hv/hyperv.h | 3 +++
    drivers/staging/hv/vmbus_drv.c | 1 +
    2 files changed, 4 insertions(+), 0 deletions(-)

    diff --git a/drivers/staging/hv/hyperv.h b/drivers/staging/hv/hyperv.h
    index 370b096..ff3c69d 100644
    --- a/drivers/staging/hv/hyperv.h
    +++ b/drivers/staging/hv/hyperv.h
    @@ -830,6 +830,9 @@ struct hv_device {

    struct vmbus_channel *channel;

    + /* This lock protects the device extension field */
    + spinlock_t ext_lock;
    +
    /* Device extension; */
    void *ext;
    };
    diff --git a/drivers/staging/hv/vmbus_drv.c b/drivers/staging/hv/vmbus_drv.c
    index 2e6bfc1..903362e 100644
    --- a/drivers/staging/hv/vmbus_drv.c
    +++ b/drivers/staging/hv/vmbus_drv.c
    @@ -557,6 +557,7 @@ struct hv_device *vmbus_child_device_create(struct hv_guid *type,
    return NULL;
    }

    + spin_lock_init(&child_device_obj->ext_lock);
    child_device_obj->channel = channel;
    /*
    * Get the human readable device type name and stash it away.
    --
    1.7.4.1


    \
     
     \ /
      Last update: 2011-06-29 16:33    [W:4.122 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site