[PATCH v3 2/3]nbd: cleanup nbd_set_socket

Pranay Kr. Srivastava
2016-06-24T10:10:09Z

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 <pranjas@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