lkml.org 
[lkml]   [2015]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/4] Drivers: hv: Further protection for the rescind path
    Date
    This series is a continuation of the "Drivers: hv: vmbus: serialize Offer and
    Rescind offer". I'm trying to address a number of theoretically possible issues
    with rescind offer handling. All these complications come from the fact that
    a rescind offer results in vmbus channel being freed and we must ensure nobody
    still uses it. Instead of introducing new locks I suggest we switch channels
    usage to the get/put workflow.

    The main part of the series is [PATCH 1/4] which introduces the workflow for
    vmbus channels, all other patches fix different corner cases using this
    workflow. I'm not sure all such cases are covered with this series (probably
    not), but in case protection is required in some other places it should become
    relatively easy to add one.

    I did some sanity testing with CONFIG_DEBUG_LOCKDEP=y and nothing popped out,
    however, additional testing would be much appreciated.

    K.Y., Haiyang, I'm not sending this series to netdev@ and linux-scsi@ as it is
    supposed to be applied as a whole, please resend these patches with your
    sign-offs when (and if) we're done with reviews. Thanks!

    Vitaly Kuznetsov (4):
    Drivers: hv: vmbus: implement get/put usage workflow for vmbus
    channels
    Drivers: hv: vmbus: do not lose rescind offer on failure in
    vmbus_process_offer()
    Drivers: hv: vmbus: protect vmbus_get_outgoing_channel() against
    channel removal
    hyperv: netvsc: improve protection against rescind offer

    drivers/hv/channel_mgmt.c | 75 +++++++++++++++++++++++++++++++++++++--------
    drivers/hv/connection.c | 7 +++--
    drivers/hv/hyperv_vmbus.h | 4 +++
    drivers/net/hyperv/netvsc.c | 10 ++++--
    drivers/scsi/storvsc_drv.c | 2 ++
    include/linux/hyperv.h | 13 ++++++++
    6 files changed, 95 insertions(+), 16 deletions(-)

    --
    1.9.3



    \
     
     \ /
      Last update: 2015-02-03 18:21    [W:2.766 / U:0.164 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site