Re: 2.6.20-git8 fails compile -- net/built-in.o __ipv6_addr_type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 13, 2007 at 11:55:10AM +0900, YOSHIFUJI Hideaki / 吉藤英明 wrote:
> In article <[email protected]> (at Mon, 12 Feb 2007 21:35:59 -0500 (EST)), Pete Clements <[email protected]> says:
> 
> > Quoting YOSHIFUJIHideaki/=?iso-2022-jp?B?GyRCNUhGIzFRTEAbKEI=?=
> >   > In article <[email protected]> (at Mon, 12 Feb 2007 18:12:16 -0800), Andrew Morton <[email protected]> says:
> >   > 
> >   > > > On Mon, 12 Feb 2007 20:10:13 -0500 (EST) Pete Clements <[email protected]> wrote:
> >   > > > 2.6.20-git8 fails compile:
> >   > > > 
> >   > > >   CHK     include/linux/compile.h
> >   > > >   UPD     include/linux/compile.h
> >   > > >   CC      init/version.o
> >   > > >   LD      init/built-in.o
> >   > > >   LD      .tmp_vmlinux1
> >   > > > net/built-in.o: In function `svc_udp_recvfrom':
> >   > > > svcsock.c:(.text+0x61be4): undefined reference to `__ipv6_addr_type'
> >   > > > make: *** [.tmp_vmlinux1] Error 1
> >   > > > 
> >   > > 
> >   > > Please send the .config.
> >   > 
> >   > and, the gcc version...
> >   > 
> >   > --yoshfuji
> >   > -
> > 
> > git 7 compiled just fine.
> 
> Ah, this is because of new ipv6 support in sunrpc code.
> Enable it if it is statically compiled.
> 
> Alternatively, we could 
> - export __ipv6_addr_type in new net/ipv6/addrconf_core.c
> or
> - introduce tiny inline for chcking if the address is link-local.
> 
> Signed-off-by: YOSHIFUJI Hideaki <[email protected]>
> 
> diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c
> index 63ae947..27dcb31 100644
> --- a/net/sunrpc/svcsock.c
> +++ b/net/sunrpc/svcsock.c
> @@ -107,12 +107,12 @@ static inline void svc_reclassify_socket
>  		sock_lock_init_class_and_name(sk, "slock-AF_INET-NFSD",
>  		    &svc_slock_key[0], "sk_lock-AF_INET-NFSD", &svc_key[0]);
>  		break;
> -
> +#ifdef CONFIG_IPV6
>  	case AF_INET6:
>  		sock_lock_init_class_and_name(sk, "slock-AF_INET6-NFSD",
>  		    &svc_slock_key[1], "sk_lock-AF_INET6-NFSD", &svc_key[1]);
>  		break;
> -
> +#endif
>  	default:
>  		BUG();
>  	}
> @@ -131,7 +131,7 @@ static char *__svc_print_addr(struct soc
>  			NIPQUAD(((struct sockaddr_in *) addr)->sin_addr),
>  			htons(((struct sockaddr_in *) addr)->sin_port));
>  		break;
> -#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
> +#if defined(CONFIG_IPV6)
>...


In the CONFIG_IPV6=m, CONFIG_SUNRPC=m case, this will result in no IPV6 
support here.

If you are going this way, a Kconfig helper variable might be better:

config SUNRPC_IPV6
	bool
	default y if (SUNRPC=y && IPV6=y) || (SUNRPC=m && IPV6) 


cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux