Message ID | 1381003790-12731-1-git-send-email-festevam@gmail.com |
---|---|
State | Rejected, archived |
Delegated to: | David Miller |
Headers | show |
From: Fabio Estevam <festevam@gmail.com> Date: Sat, 5 Oct 2013 17:09:50 -0300 > From: Fabio Estevam <fabio.estevam@freescale.com> > > Commit 9a3bab6b05 (net: net_secret should not depend on TCP) introduced > the following build warning when CONFIG_IPV6 is not selected: > > net/core/secure_seq.c:17:13: warning: 'net_secret_init' defined but not used [-Wunused-function] > > Fix it by moving net_secret_init(void) inside the '#if IS_ENABLED(CONFIG_IPV6)' > block. > > Reported-by: Olof Johansson <olof@lixom.net> > Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> seq_scale is used by secure_tcp_sequence_number, which is only protected by CONFIG_INET. I have no idea how you can get this build problem. And I cannot reproduce it here: [davem@drr net]$ egrep CONFIG_IPV6 .config # CONFIG_IPV6 is not set [davem@drr net]$ make net/core/secure_seq.o scripts/kconfig/conf --silentoldconfig Kconfig make[1]: Nothing to be done for `all'. make[1]: Nothing to be done for `relocs'. CHK include/config/kernel.release CHK include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h CALL scripts/checksyscalls.sh CC net/core/secure_seq.o [davem@drr net]$ Furthermore your commit message is talking about net_secret_init but your patch does things with seq_scale. I'm not applying this patch. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, Oct 5, 2013 at 1:27 PM, David Miller <davem@davemloft.net> wrote: > From: Fabio Estevam <festevam@gmail.com> > Date: Sat, 5 Oct 2013 17:09:50 -0300 > >> From: Fabio Estevam <fabio.estevam@freescale.com> >> >> Commit 9a3bab6b05 (net: net_secret should not depend on TCP) introduced >> the following build warning when CONFIG_IPV6 is not selected: >> >> net/core/secure_seq.c:17:13: warning: 'net_secret_init' defined but not used [-Wunused-function] >> >> Fix it by moving net_secret_init(void) inside the '#if IS_ENABLED(CONFIG_IPV6)' >> block. >> >> Reported-by: Olof Johansson <olof@lixom.net> >> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> > > seq_scale is used by secure_tcp_sequence_number, which is only protected > by CONFIG_INET. I have no idea how you can get this build problem. > > And I cannot reproduce it here: You get it if you have CONFIG_NET enabled, but CONFIG_INET off. We seem to have a few defconfigs on arm that has that setting, likely because they lack native network interfaces but need local unix sockets. Or whatever. But that's how you hit it. Steps to reproduce, even with ARCH=sparc: make allnoconfig edit .config, set CONFIG_NET=y yes "" | make oldconfig make -Olof -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Olof, On Sun, Oct 6, 2013 at 2:25 AM, Olof Johansson <olof@lixom.net> wrote: > You get it if you have CONFIG_NET enabled, but CONFIG_INET off. We > seem to have a few defconfigs on arm that has that setting, likely > because they lack native network interfaces but need local unix > sockets. Or whatever. But that's how you hit it. > > Steps to reproduce, even with ARCH=sparc: > > make allnoconfig > edit .config, set CONFIG_NET=y > yes "" | make oldconfig > make Yes, I fixed the commit log and patch in v2. Regards, Fabio Estevam -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/core/secure_seq.c b/net/core/secure_seq.c index 3f1ec15..ee70541 100644 --- a/net/core/secure_seq.c +++ b/net/core/secure_seq.c @@ -10,6 +10,24 @@ #include <net/secure_seq.h> +#ifdef CONFIG_INET +static u32 seq_scale(u32 seq) +{ + /* + * As close as possible to RFC 793, which + * suggests using a 250 kHz clock. + * Further reading shows this assumes 2 Mb/s networks. + * For 10 Mb/s Ethernet, a 1 MHz clock is appropriate. + * For 10 Gb/s Ethernet, a 1 GHz clock should be ok, but + * we also need to limit the resolution so that the u32 seq + * overlaps less than one time per MSL (2 minutes). + * Choosing a clock of 64 ns period is OK. (period of 274 s) + */ + return seq + (ktime_to_ns(ktime_get_real()) >> 6); +} +#endif + +#if IS_ENABLED(CONFIG_IPV6) #define NET_SECRET_SIZE (MD5_MESSAGE_BYTES / 4) static u32 net_secret[NET_SECRET_SIZE] ____cacheline_aligned; @@ -30,24 +48,6 @@ static void net_secret_init(void) } } -#ifdef CONFIG_INET -static u32 seq_scale(u32 seq) -{ - /* - * As close as possible to RFC 793, which - * suggests using a 250 kHz clock. - * Further reading shows this assumes 2 Mb/s networks. - * For 10 Mb/s Ethernet, a 1 MHz clock is appropriate. - * For 10 Gb/s Ethernet, a 1 GHz clock should be ok, but - * we also need to limit the resolution so that the u32 seq - * overlaps less than one time per MSL (2 minutes). - * Choosing a clock of 64 ns period is OK. (period of 274 s) - */ - return seq + (ktime_to_ns(ktime_get_real()) >> 6); -} -#endif - -#if IS_ENABLED(CONFIG_IPV6) __u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr, __be16 sport, __be16 dport) {