This patch
1) uses spin_lock instead of irq version.

2) removes the goto statement in case a socket
   is already assigned with simple if-else statement.

Signed-off-by: Pranay Kr. Srivastava <pran...@gmail.com>
---
 drivers/block/nbd.c | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index 586d946..9223b09 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -653,17 +653,12 @@ static int nbd_set_socket(struct nbd_device *nbd, struct 
socket *sock)
 {
        int ret = 0;
 
-       spin_lock_irq(&nbd->sock_lock);
-
-       if (nbd->sock) {
+       spin_lock(&nbd->sock_lock);
+       if (nbd->sock)
                ret = -EBUSY;
-               goto out;
-       }
-
-       nbd->sock = sock;
-
-out:
-       spin_unlock_irq(&nbd->sock_lock);
+       else
+               nbd->sock = sock;
+       spin_unlock(&nbd->sock_lock);
 
        return ret;
 }
-- 
1.9.1

Reply via email to