Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c243d7e2 authored by Ying Xue's avatar Ying Xue Committed by David S. Miller
Browse files

net: kernel socket should be released in init_net namespace



Creating a kernel socket with sock_create_kern() happens in "init_net"
namespace, however, releasing it with sk_release_kernel() occurs in
the current namespace which may be different with "init_net" namespace.
Therefore, we should guarantee that the namespace in which a kernel
socket is created is same as the socket is created.

Signed-off-by: default avatarYing Xue <ying.xue@windriver.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent db4374f4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1454,8 +1454,8 @@ void sk_release_kernel(struct sock *sk)
		return;

	sock_hold(sk);
	sock_release(sk->sk_socket);
	sock_net_set(sk, get_net(&init_net));
	sock_release(sk->sk_socket);
	sock_put(sk);
}
EXPORT_SYMBOL(sk_release_kernel);