Message ID | 1470185107-17332-1-git-send-email-fw@strlen.de |
---|---|
State | Accepted |
Delegated to: | Pablo Neira |
Headers | show |
Hi Florian, [auto build test ERROR on nf-next/master] url: https://github.com/0day-ci/linux/commits/Florian-Westphal/netfilter-use_nf_conn_expires-helper-in-more-places/20160803-124239 base: https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master config: i386-randconfig-x018-201631 (attached as .config) compiler: gcc-6 (Debian 6.1.1-9) 6.1.1 20160705 reproduce: # save the attached .config to linux build tree make ARCH=i386 All error/warnings (new ones prefixed by >>): net/netfilter/nf_conntrack_standalone.c: In function 'ct_seq_show': >> net/netfilter/nf_conntrack_standalone.c:227:6: error: implicit declaration of function 'nf_ct_expires' [-Werror=implicit-function-declaration] nf_ct_expires(ct) / HZ); ^~~~~~~~~~~~~ >> net/netfilter/nf_conntrack_standalone.c:224:35: warning: format '%ld' expects argument of type 'long int', but argument 7 has type 'int' [-Wformat=] seq_printf(s, "%-8s %u %-8s %u %ld ", ^ cc1: some warnings being treated as errors -- net/netfilter/nf_conntrack_netlink.c: In function 'ctnetlink_dump_timeout': >> net/netfilter/nf_conntrack_netlink.c:152:17: error: implicit declaration of function 'nf_ct_expires' [-Werror=implicit-function-declaration] long timeout = nf_ct_expires(ct) / HZ; ^~~~~~~~~~~~~ cc1: some warnings being treated as errors -- net/netfilter/xt_conntrack.c: In function 'conntrack_mt': >> net/netfilter/xt_conntrack.c:236:27: error: implicit declaration of function 'nf_ct_expires' [-Werror=implicit-function-declaration] unsigned long expires = nf_ct_expires(ct) / HZ; ^~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/nf_ct_expires +227 net/netfilter/nf_conntrack_standalone.c 218 l3proto = __nf_ct_l3proto_find(nf_ct_l3num(ct)); 219 NF_CT_ASSERT(l3proto); 220 l4proto = __nf_ct_l4proto_find(nf_ct_l3num(ct), nf_ct_protonum(ct)); 221 NF_CT_ASSERT(l4proto); 222 223 ret = -ENOSPC; > 224 seq_printf(s, "%-8s %u %-8s %u %ld ", 225 l3proto->name, nf_ct_l3num(ct), 226 l4proto->name, nf_ct_protonum(ct), > 227 nf_ct_expires(ct) / HZ); 228 229 if (l4proto->print_conntrack) 230 l4proto->print_conntrack(s, ct); --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Hi Florian, [auto build test ERROR on nf-next/master] url: https://github.com/0day-ci/linux/commits/Florian-Westphal/netfilter-use_nf_conn_expires-helper-in-more-places/20160803-124239 base: https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master config: sparc64-allyesconfig (attached as .config) compiler: sparc64-linux-gnu-gcc (Debian 5.4.0-6) 5.4.0 20160609 reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=sparc64 All error/warnings (new ones prefixed by >>): net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c: In function 'ct_seq_show': >> net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c:166:6: error: implicit declaration of function 'nf_ct_expires' [-Werror=implicit-function-declaration] nf_ct_expires(ct) / HZ); ^ >> net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c:164:16: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'int' [-Wformat=] seq_printf(s, "%-8s %u %ld ", ^ cc1: some warnings being treated as errors vim +/nf_ct_expires +166 net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c 158 l3proto = __nf_ct_l3proto_find(nf_ct_l3num(ct)); 159 NF_CT_ASSERT(l3proto); 160 l4proto = __nf_ct_l4proto_find(nf_ct_l3num(ct), nf_ct_protonum(ct)); 161 NF_CT_ASSERT(l4proto); 162 163 ret = -ENOSPC; > 164 seq_printf(s, "%-8s %u %ld ", 165 l4proto->name, nf_ct_protonum(ct), > 166 nf_ct_expires(ct) / HZ); 167 168 if (l4proto->print_conntrack) 169 l4proto->print_conntrack(s, ct); --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
kbuild test robot <lkp@intel.com> wrote: > Hi Florian, > > [auto build test ERROR on nf-next/master] > > url: https://github.com/0day-ci/linux/commits/Florian-Westphal/netfilter-use_nf_conn_expires-helper-in-more-places/20160803-124239 > base: https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master > config: i386-randconfig-x018-201631 (attached as .config) > compiler: gcc-6 (Debian 6.1.1-9) 6.1.1 20160705 > reproduce: > # save the attached .config to linux build tree > make ARCH=i386 > > All error/warnings (new ones prefixed by >>): > > net/netfilter/nf_conntrack_standalone.c: In function 'ct_seq_show': > >> net/netfilter/nf_conntrack_standalone.c:227:6: error: implicit declaration of function 'nf_ct_expires' [-Werror=implicit-function-declaration] > nf_ct_expires(ct) / HZ); > ^~~~~~~~~~~~~ It would be nice to see the sha1 of 'master'. Builds fine with this config for me; nf-next master is commit 6a492b0f23d28e1f946cdf08e54617484400dafb Merge: d85486d 354a086 Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Wed Jul 27 14:48:37 2016 -0700 I guess this was with an older tree...? -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Aug 03, 2016 at 02:53:19PM +0200, Florian Westphal wrote: >kbuild test robot <lkp@intel.com> wrote: >> Hi Florian, >> >> [auto build test ERROR on nf-next/master] >> >> url: https://github.com/0day-ci/linux/commits/Florian-Westphal/netfilter-use_nf_conn_expires-helper-in-more-places/20160803-124239 >> base: https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master >> config: i386-randconfig-x018-201631 (attached as .config) >> compiler: gcc-6 (Debian 6.1.1-9) 6.1.1 20160705 >> reproduce: >> # save the attached .config to linux build tree >> make ARCH=i386 >> >> All error/warnings (new ones prefixed by >>): >> >> net/netfilter/nf_conntrack_standalone.c: In function 'ct_seq_show': >> >> net/netfilter/nf_conntrack_standalone.c:227:6: error: implicit declaration of function 'nf_ct_expires' [-Werror=implicit-function-declaration] >> nf_ct_expires(ct) / HZ); >> ^~~~~~~~~~~~~ > >It would be nice to see the sha1 of 'master'. It's this SHA1: https://github.com/0day-ci/linux/commit/4b512e1c1f8de6b9ceb796ecef8658e0a083cab7 Which you may find out by following this URL: >> url: https://github.com/0day-ci/linux/commits/Florian-Westphal/netfilter-use_nf_conn_expires-helper-in-more-places/20160803-124239 >Builds fine with this config for me; nf-next master is > >commit 6a492b0f23d28e1f946cdf08e54617484400dafb >Merge: d85486d 354a086 >Author: Linus Torvalds <torvalds@linux-foundation.org> >Date: Wed Jul 27 14:48:37 2016 -0700 > >I guess this was with an older tree...? Yeah the tested base is the previous version and older than that one. Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Aug 03, 2016 at 02:45:07AM +0200, Florian Westphal wrote: > ... so we don't need to touch all of these places when we get rid of the > timer in nf_conn. Also applied, thanks. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" 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/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c index 6392371..67bfc69 100644 --- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c +++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c @@ -163,8 +163,7 @@ static int ct_seq_show(struct seq_file *s, void *v) ret = -ENOSPC; seq_printf(s, "%-8s %u %ld ", l4proto->name, nf_ct_protonum(ct), - timer_pending(&ct->timeout) - ? (long)(ct->timeout.expires - jiffies)/HZ : 0); + nf_ct_expires(ct) / HZ); if (l4proto->print_conntrack) l4proto->print_conntrack(s, ct); diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c index 050bb34..68800c1 100644 --- a/net/netfilter/nf_conntrack_netlink.c +++ b/net/netfilter/nf_conntrack_netlink.c @@ -149,10 +149,7 @@ nla_put_failure: static int ctnetlink_dump_timeout(struct sk_buff *skb, const struct nf_conn *ct) { - long timeout = ((long)ct->timeout.expires - (long)jiffies) / HZ; - - if (timeout < 0) - timeout = 0; + long timeout = nf_ct_expires(ct) / HZ; if (nla_put_be32(skb, CTA_TIMEOUT, htonl(timeout))) goto nla_put_failure; diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c index 958a145..4e7becd 100644 --- a/net/netfilter/nf_conntrack_standalone.c +++ b/net/netfilter/nf_conntrack_standalone.c @@ -224,8 +224,7 @@ static int ct_seq_show(struct seq_file *s, void *v) seq_printf(s, "%-8s %u %-8s %u %ld ", l3proto->name, nf_ct_l3num(ct), l4proto->name, nf_ct_protonum(ct), - timer_pending(&ct->timeout) - ? (long)(ct->timeout.expires - jiffies)/HZ : 0); + nf_ct_expires(ct) / HZ); if (l4proto->print_conntrack) l4proto->print_conntrack(s, ct); diff --git a/net/netfilter/xt_conntrack.c b/net/netfilter/xt_conntrack.c index 188404b9..a3b8f69 100644 --- a/net/netfilter/xt_conntrack.c +++ b/net/netfilter/xt_conntrack.c @@ -233,10 +233,8 @@ conntrack_mt(const struct sk_buff *skb, struct xt_action_param *par, return false; if (info->match_flags & XT_CONNTRACK_EXPIRES) { - unsigned long expires = 0; + unsigned long expires = nf_ct_expires(ct) / HZ; - if (timer_pending(&ct->timeout)) - expires = (ct->timeout.expires - jiffies) / HZ; if ((expires >= info->expires_min && expires <= info->expires_max) ^ !(info->invert_flags & XT_CONNTRACK_EXPIRES))
... so we don't need to touch all of these places when we get rid of the timer in nf_conn. Signed-off-by: Florian Westphal <fw@strlen.de> --- net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c | 3 +-- net/netfilter/nf_conntrack_netlink.c | 5 +---- net/netfilter/nf_conntrack_standalone.c | 3 +-- net/netfilter/xt_conntrack.c | 4 +--- 4 files changed, 4 insertions(+), 11 deletions(-)