mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-20 05:31:15 +00:00
net: Pass kern from net_proto_family.create to sk_alloc
In preparation for changing how struct net is refcounted on kernel sockets pass the knowledge that we are creating a kernel socket from sock_create_kern through to sk_alloc. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
eeb1bd5c40
commit
11aa9c28b4
59 changed files with 109 additions and 108 deletions
|
@ -620,7 +620,7 @@ static struct proto unix_proto = {
|
|||
*/
|
||||
static struct lock_class_key af_unix_sk_receive_queue_lock_key;
|
||||
|
||||
static struct sock *unix_create1(struct net *net, struct socket *sock)
|
||||
static struct sock *unix_create1(struct net *net, struct socket *sock, int kern)
|
||||
{
|
||||
struct sock *sk = NULL;
|
||||
struct unix_sock *u;
|
||||
|
@ -629,7 +629,7 @@ static struct sock *unix_create1(struct net *net, struct socket *sock)
|
|||
if (atomic_long_read(&unix_nr_socks) > 2 * get_max_files())
|
||||
goto out;
|
||||
|
||||
sk = sk_alloc(net, PF_UNIX, GFP_KERNEL, &unix_proto);
|
||||
sk = sk_alloc(net, PF_UNIX, GFP_KERNEL, &unix_proto, kern);
|
||||
if (!sk)
|
||||
goto out;
|
||||
|
||||
|
@ -688,7 +688,7 @@ static int unix_create(struct net *net, struct socket *sock, int protocol,
|
|||
return -ESOCKTNOSUPPORT;
|
||||
}
|
||||
|
||||
return unix_create1(net, sock) ? 0 : -ENOMEM;
|
||||
return unix_create1(net, sock, kern) ? 0 : -ENOMEM;
|
||||
}
|
||||
|
||||
static int unix_release(struct socket *sock)
|
||||
|
@ -1088,7 +1088,7 @@ static int unix_stream_connect(struct socket *sock, struct sockaddr *uaddr,
|
|||
err = -ENOMEM;
|
||||
|
||||
/* create new sock for complete connection */
|
||||
newsk = unix_create1(sock_net(sk), NULL);
|
||||
newsk = unix_create1(sock_net(sk), NULL, 0);
|
||||
if (newsk == NULL)
|
||||
goto out;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue