Subject: Re: linux-next: build failure after merge of the final tree (nfs tree related)

From: Stanislav Kinsbursky <[email-masked]>
Date: Tue, 24 Jan 2012 12:38:33 +0400

23.01.2012 22:10, Trond Myklebust пишет:
> On Mon, 2012-01-23 at 13:59 +1100, Stephen Rothwell wrote:
>> Hi all,
>>
>> After merging the final tree, today's linux-next build (powerpc
>> ppc44x_defconfig) failed like this:
>>
>> net/sunrpc/svcsock.c: In function 'svc_setup_socket':
>> net/sunrpc/svcsock.c:1412:40: error: 'struct sock_common' has no member named 'skc_net'
>>
>> This build has CONFIG_NET_NS unset.
>>
>> Caused by commit eff9c3383687 ("SUNRPC: pass network namespace to service
>> registering routines").
>>
>> I applied this (suboptimal) patch for today:
>>
>> From: Stephen Rothwell<[email-masked]>
>> Date: Mon, 23 Jan 2012 13:55:01 +1100
>> Subject: [PATCH] SUNRPC: fixup for namespace changes
>>
>> Fixes this build error when CONFIG_NET_NS is not set:
>>
>> net/sunrpc/svcsock.c: In function 'svc_setup_socket':
>> net/sunrpc/svcsock.c:1412:40: error: 'struct sock_common' has no member named 'skc_net'
>>
>> Signed-off-by: Stephen Rothwell<[email-masked]>
>> ---
>>   net/sunrpc/svcsock.c |    9 ++++++++-
>>   1 files changed, 8 insertions(+), 1 deletions(-)
>>
>> diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c
>> index e8af0c9..4d02d1a 100644
>> --- a/net/sunrpc/svcsock.c
>> +++ b/net/sunrpc/svcsock.c
>> @@ -41,6 +41,7 @@
>>   #include<net/ipv6.h>
>>   #include<net/tcp.h>
>>   #include<net/tcp_states.h>
>> +#include<net/net_namespace.h>
>>   #include<asm/uaccess.h>
>>   #include<asm/ioctls.h>
>>
>> @@ -1409,7 +1410,13 @@ static struct svc_sock *svc_setup_socket(struct svc_serv *serv,
>>
>>   	/* Register socket with portmapper */
>>   	if (*errp>= 0&&  pmap_register)
>> -		*errp = svc_register(serv, sock->sk->sk_net, inet->sk_family,
>> +		*errp = svc_register(serv,
>> +#ifdef CONFIG_NET_NS
>> +				     sock->sk->sk_net,
>> +#else
>> +				&init_net,
>> +#endif
>> +				     inet->sk_family,
>>   				     inet->sk_protocol,
>>   				     ntohs(inet_sk(inet)->inet_sport));
>>
>> --
>> 1.7.9.rc0.23.g7e521
>
> Stanislav,
>
> Shouldn't we just be using a 'sock_net(sock->sk)'?
>

Yes, you right, Trond.
Should I fix it with a new patch?

-- 
Best regards,
Stanislav Kinsbursky