|
@@ -1501,6 +1501,8 @@ out:
|
|
|
return err;
|
|
|
}
|
|
|
|
|
|
+static struct lock_class_key l2tp_socket_class;
|
|
|
+
|
|
|
int l2tp_tunnel_create(struct net *net, int fd, int version, u32 tunnel_id, u32 peer_tunnel_id, struct l2tp_tunnel_cfg *cfg, struct l2tp_tunnel **tunnelp)
|
|
|
{
|
|
|
struct l2tp_tunnel *tunnel = NULL;
|
|
@@ -1605,6 +1607,8 @@ int l2tp_tunnel_create(struct net *net, int fd, int version, u32 tunnel_id, u32
|
|
|
tunnel->old_sk_destruct = sk->sk_destruct;
|
|
|
sk->sk_destruct = &l2tp_tunnel_destruct;
|
|
|
tunnel->sock = sk;
|
|
|
+ lockdep_set_class_and_name(&sk->sk_lock.slock, &l2tp_socket_class, "l2tp_sock");
|
|
|
+
|
|
|
sk->sk_allocation = GFP_ATOMIC;
|
|
|
|
|
|
/* Add tunnel to our list */
|