int hidp_add_connection(struct hidp_connadd_req *req, struct socket *ctrl_sock, struct socket *intr_sock)
{
-@@ -979,6 +1063,39 @@ int hidp_add_connection(struct hidp_conn
+@@ -981,6 +1065,39 @@ int hidp_add_connection(struct hidp_conn
BT_DBG("rd_data %p rd_size %d", req->rd_data, req->rd_size);
down_write(&hidp_session_sem);
s = __hidp_get_session(&bt_sk(ctrl_sock->sk)->dst);
-@@ -1026,6 +1143,7 @@ int hidp_add_connection(struct hidp_conn
+@@ -1028,6 +1145,7 @@ int hidp_add_connection(struct hidp_conn
__hidp_link_session(session);
if (req->rd_size > 0) {
err = hidp_setup_hid(session, req);
if (err && err != -ENODEV)
-@@ -1037,6 +1155,16 @@ int hidp_add_connection(struct hidp_conn
+@@ -1039,6 +1157,16 @@ int hidp_add_connection(struct hidp_conn
if (err < 0)
goto purge;
}
hidp_set_timer(session);
-@@ -1095,6 +1223,7 @@ unlink:
+@@ -1097,6 +1225,7 @@ unlink:
session->input = NULL;
}
if (session->hid) {
hid_destroy_device(session->hid);
session->hid = NULL;
-@@ -1108,10 +1237,15 @@ purge:
+@@ -1110,10 +1239,15 @@ purge:
skb_queue_purge(&session->ctrl_transmit);
skb_queue_purge(&session->intr_transmit);
--- a/net/bluetooth/l2cap_sock.c
+++ b/net/bluetooth/l2cap_sock.c
-@@ -573,8 +573,13 @@ static int l2cap_sock_setsockopt_old(str
+@@ -579,8 +579,13 @@ static int l2cap_sock_setsockopt_old(str
return err;
}
{
struct sock *sk = sock->sk;
struct l2cap_chan *chan = l2cap_pi(sk)->chan;
-@@ -1225,8 +1230,12 @@ static struct sock *l2cap_sock_alloc(str
+@@ -1231,8 +1236,12 @@ static struct sock *l2cap_sock_alloc(str
return sk;
}
{
struct sock *sk;
-@@ -1238,7 +1247,11 @@ static int l2cap_sock_create(struct net
+@@ -1244,7 +1253,11 @@ static int l2cap_sock_create(struct net
sock->type != SOCK_DGRAM && sock->type != SOCK_RAW)
return -ESOCKTNOSUPPORT;