}
 
                if (sk->sk_state == BT_CONNECT) {
-                       if (l2cap_check_security(sk) &&
-                                       __l2cap_no_conn_pending(sk)) {
-                               struct l2cap_conn_req req;
+                       struct l2cap_conn_req req;
 
-                               if (!l2cap_mode_supported(l2cap_pi(sk)->mode,
-                                               conn->feat_mask)
-                                               && l2cap_pi(sk)->conf_state &
-                                               L2CAP_CONF_STATE2_DEVICE) {
-                                       tmp1 = kzalloc(sizeof(struct sock_del_list),
-                                                       GFP_ATOMIC);
-                                       tmp1->sk = sk;
-                                       list_add_tail(&tmp1->list, &del.list);
-                                       bh_unlock_sock(sk);
-                                       continue;
-                               }
+                       if (!l2cap_check_security(sk) ||
+                                       !__l2cap_no_conn_pending(sk)) {
+                               bh_unlock_sock(sk);
+                               continue;
+                       }
 
-                               req.scid = cpu_to_le16(l2cap_pi(sk)->scid);
-                               req.psm  = l2cap_pi(sk)->psm;
+                       if (!l2cap_mode_supported(l2cap_pi(sk)->mode,
+                                       conn->feat_mask)
+                                       && l2cap_pi(sk)->conf_state &
+                                       L2CAP_CONF_STATE2_DEVICE) {
+                               tmp1 = kzalloc(sizeof(struct sock_del_list),
+                                               GFP_ATOMIC);
+                               tmp1->sk = sk;
+                               list_add_tail(&tmp1->list, &del.list);
+                               bh_unlock_sock(sk);
+                               continue;
+                       }
 
-                               l2cap_pi(sk)->ident = l2cap_get_ident(conn);
-                               l2cap_pi(sk)->conf_state |= L2CAP_CONF_CONNECT_PEND;
+                       req.scid = cpu_to_le16(l2cap_pi(sk)->scid);
+                       req.psm  = l2cap_pi(sk)->psm;
+
+                       l2cap_pi(sk)->ident = l2cap_get_ident(conn);
+                       l2cap_pi(sk)->conf_state |= L2CAP_CONF_CONNECT_PEND;
+
+                       l2cap_send_cmd(conn, l2cap_pi(sk)->ident,
+                               L2CAP_CONN_REQ, sizeof(req), &req);
 
-                               l2cap_send_cmd(conn, l2cap_pi(sk)->ident,
-                                       L2CAP_CONN_REQ, sizeof(req), &req);
-                       }
                } else if (sk->sk_state == BT_CONNECT2) {
                        struct l2cap_conn_rsp rsp;
                        char buf[128];