]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
RDS: Fixes warning while rds-info. spin_lock_irqsave() is changed to spin_lock_bh().
authorAjaykumar Hotchandani <ajaykumar.hotchandani@oracle.com>
Wed, 16 Jan 2013 06:00:57 +0000 (22:00 -0800)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Wed, 8 Jul 2015 20:37:54 +0000 (13:37 -0700)
Signed-off-by: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
Reviewd-by: Bang Nguyen <bang.nguyen@oracle.com>
(cherry picked from commit 237b028186dd2523fbb81d47463ea8ce4e9a202d)

net/rds/af_rds.c

index 36ce70f138761087d786398df60646301d37bdd6..aa7a6f687dd6767925c8dcb1210a9434e4fbcece 100644 (file)
@@ -80,7 +80,6 @@ static int rds_release(struct socket *sock)
 {
        struct sock *sk = sock->sk;
        struct rds_sock *rs;
-       unsigned long flags;
 
        if (!sk)
                goto out;
@@ -100,10 +99,10 @@ static int rds_release(struct socket *sock)
        rds_rdma_drop_keys(rs);
        rds_notify_queue_get(rs, NULL);
 
-       spin_lock_irqsave(&rds_sock_lock, flags);
+       spin_lock_bh(&rds_sock_lock);
        list_del_init(&rs->rs_item);
        rds_sock_count--;
-       spin_unlock_irqrestore(&rds_sock_lock, flags);
+       spin_unlock_bh(&rds_sock_lock);
 
        rds_trans_put(rs->rs_transport);
 
@@ -218,7 +217,6 @@ static int rds_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
 {
        struct rds_sock *rs = rds_sk_to_rs(sock->sk);
        rds_tos_t tos;
-       unsigned long flags;
 
        switch (cmd) {
        case SIOCRDSSETTOS:
@@ -228,13 +226,13 @@ static int rds_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                if (get_user(tos, (rds_tos_t __user *)arg))
                        return -EFAULT;
 
-               spin_lock_irqsave(&rds_sock_lock, flags);
+               spin_lock_bh(&rds_sock_lock);
                if (rs->rs_tos || rs->rs_conn) {
-                       spin_unlock_irqrestore(&rds_sock_lock, flags);
+                       spin_unlock_bh(&rds_sock_lock);
                        return -EINVAL;
                }
                rs->rs_tos = tos;
-               spin_unlock_irqrestore(&rds_sock_lock, flags);
+               spin_unlock_bh(&rds_sock_lock);
                break;
        default:
                return -ENOIOCTLCMD;
@@ -476,7 +474,6 @@ static void rds_sock_destruct(struct sock *sk)
 
 static int __rds_create(struct socket *sock, struct sock *sk, int protocol)
 {
-       unsigned long flags;
        struct rds_sock *rs;
 
        sock_init_data(sock, sk);
@@ -500,10 +497,10 @@ static int __rds_create(struct socket *sock, struct sock *sk, int protocol)
        if (rs->rs_bound_addr)
                printk(KERN_CRIT "bound addr %x at create\n", rs->rs_bound_addr);
 
-       spin_lock_irqsave(&rds_sock_lock, flags);
+       spin_lock_bh(&rds_sock_lock);
        list_add_tail(&rs->rs_item, &rds_sock_list);
        rds_sock_count++;
-       spin_unlock_irqrestore(&rds_sock_lock, flags);
+       spin_unlock_bh(&rds_sock_lock);
 
        return 0;
 }
@@ -578,12 +575,11 @@ static void rds_sock_inc_info(struct socket *sock, unsigned int len,
        struct rds_sock *rs;
        struct sock *sk;
        struct rds_incoming *inc;
-       unsigned long flags;
        unsigned int total = 0;
 
        len /= sizeof(struct rds_info_message);
 
-       spin_lock_irqsave(&rds_sock_lock, flags);
+       spin_lock_bh(&rds_sock_lock);
 
        list_for_each_entry(rs, &rds_sock_list, rs_item) {
                sk = rds_rs_to_sk(rs);
@@ -600,7 +596,7 @@ static void rds_sock_inc_info(struct socket *sock, unsigned int len,
                read_unlock(&rs->rs_recv_lock);
        }
 
-       spin_unlock_irqrestore(&rds_sock_lock, flags);
+       spin_unlock_bh(&rds_sock_lock);
 
        lens->nr = total;
        lens->each = sizeof(struct rds_info_message);
@@ -612,11 +608,10 @@ static void rds_sock_info(struct socket *sock, unsigned int len,
 {
        struct rds_info_socket sinfo;
        struct rds_sock *rs;
-       unsigned long flags;
 
        len /= sizeof(struct rds_info_socket);
 
-       spin_lock_irqsave(&rds_sock_lock, flags);
+       spin_lock_bh(&rds_sock_lock);
 
        if (len < rds_sock_count)
                goto out;
@@ -637,7 +632,7 @@ out:
        lens->nr = rds_sock_count;
        lens->each = sizeof(struct rds_info_socket);
 
-       spin_unlock_irqrestore(&rds_sock_lock, flags);
+       spin_unlock_bh(&rds_sock_lock);
 }
 
 static unsigned long parse_ul(char *ptr, unsigned long max)