Drivers: hv: rename sc_lock to the more generic lock
authorVitaly Kuznetsov <vkuznets@redhat.com>
Tue, 20 Jan 2015 15:45:05 +0000 (16:45 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 25 Jan 2015 17:18:00 +0000 (09:18 -0800)
sc_lock spinlock in struct vmbus_channel is being used to not only protect the
sc_list field, e.g. vmbus_open() function uses it to implement test-and-set
access to the state field. Rename it to the more generic 'lock' and add the
description.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hv/channel.c
drivers/hv/channel_mgmt.c
include/linux/hyperv.h

index 18c4f23dacf1b24d6c0c94f13abcff2ccf769730..2978f5ee8d2a0abdeacdc8f7fc2121d35c0260a2 100644 (file)
@@ -73,14 +73,14 @@ int vmbus_open(struct vmbus_channel *newchannel, u32 send_ringbuffer_size,
        unsigned long flags;
        int ret, t, err = 0;
 
-       spin_lock_irqsave(&newchannel->sc_lock, flags);
+       spin_lock_irqsave(&newchannel->lock, flags);
        if (newchannel->state == CHANNEL_OPEN_STATE) {
                newchannel->state = CHANNEL_OPENING_STATE;
        } else {
-               spin_unlock_irqrestore(&newchannel->sc_lock, flags);
+               spin_unlock_irqrestore(&newchannel->lock, flags);
                return -EINVAL;
        }
-       spin_unlock_irqrestore(&newchannel->sc_lock, flags);
+       spin_unlock_irqrestore(&newchannel->lock, flags);
 
        newchannel->onchannel_callback = onchannelcallback;
        newchannel->channel_callback_context = context;
index 704c0e00f8d255304eae33f09c76a8cbf26b37bc..1e0b996ed643768089b1015a6c2a66444b26f858 100644 (file)
@@ -146,7 +146,7 @@ static struct vmbus_channel *alloc_channel(void)
                return NULL;
 
        spin_lock_init(&channel->inbound_lock);
-       spin_lock_init(&channel->sc_lock);
+       spin_lock_init(&channel->lock);
 
        INIT_LIST_HEAD(&channel->sc_list);
        INIT_LIST_HEAD(&channel->percpu_list);
@@ -246,9 +246,9 @@ static void vmbus_process_rescind_offer(struct work_struct *work)
                spin_unlock_irqrestore(&vmbus_connection.channel_lock, flags);
        } else {
                primary_channel = channel->primary_channel;
-               spin_lock_irqsave(&primary_channel->sc_lock, flags);
+               spin_lock_irqsave(&primary_channel->lock, flags);
                list_del(&channel->sc_list);
-               spin_unlock_irqrestore(&primary_channel->sc_lock, flags);
+               spin_unlock_irqrestore(&primary_channel->lock, flags);
        }
        free_channel(channel);
 }
@@ -323,9 +323,9 @@ static void vmbus_process_offer(struct work_struct *work)
                         * Process the sub-channel.
                         */
                        newchannel->primary_channel = channel;
-                       spin_lock_irqsave(&channel->sc_lock, flags);
+                       spin_lock_irqsave(&channel->lock, flags);
                        list_add_tail(&newchannel->sc_list, &channel->sc_list);
-                       spin_unlock_irqrestore(&channel->sc_lock, flags);
+                       spin_unlock_irqrestore(&channel->lock, flags);
 
                        if (newchannel->target_cpu != get_cpu()) {
                                put_cpu();
index 259023a34becc775fc115a62754851776b935880..5a2ba674795eaf2b2b281eaa17289748cbc84320 100644 (file)
@@ -734,7 +734,12 @@ struct vmbus_channel {
         */
        void (*sc_creation_callback)(struct vmbus_channel *new_sc);
 
-       spinlock_t sc_lock;
+       /*
+        * The spinlock to protect the structure. It is being used to protect
+        * test-and-set access to various attributes of the structure as well
+        * as all sc_list operations.
+        */
+       spinlock_t lock;
        /*
         * All Sub-channels of a primary channel are linked here.
         */