From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steven Rostedt Subject: Re: [RFA][PATCH 2/8] netfilter: Remove return values for print_conntrack callbacks Date: Wed, 29 Oct 2014 21:06:33 -0400 Message-ID: <20141029210633.4b28faed@gandalf.local.home> References: <20141029215602.535533597@goodmis.org> <20141029220107.465008329@goodmis.org> <20141029221601.GB10069@breakpoint.cc> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: linux-kernel@vger.kernel.org, Ingo Molnar , Andrew Morton , Al Viro , Joe Perches , Pablo Neira Ayuso , Patrick McHardy , Jozsef Kadlecsik , netfilter-devel@vger.kernel.org, coreteam@netfilter.org To: Florian Westphal Return-path: In-Reply-To: <20141029221601.GB10069@breakpoint.cc> Sender: linux-kernel-owner@vger.kernel.org List-Id: netfilter-devel.vger.kernel.org On Wed, 29 Oct 2014 23:16:01 +0100 Florian Westphal wrote: > Steven Rostedt wrote: > > From: "Steven Rostedt (Red Hat)" > > > > [ REQUEST FOR ACKS ] > > > > The seq_printf() and friends are having their return values removed. > > The print_conntrack() returns the result of seq_printf(), which is > > meaningless when seq_printf() returns void. Might as well remove the > > return values of print_conntrack() as well. > [..] > > > diff --git a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c > > index 4c48e434bb1f..91f207c2cb69 100644 > > --- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c > > +++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c > > @@ -147,7 +147,10 @@ static int ct_seq_show(struct seq_file *s, void *v) > > ? (long)(ct->timeout.expires - jiffies)/HZ : 0) != 0) > > goto release; > > > > - if (l4proto->print_conntrack && l4proto->print_conntrack(s, ct)) > > + if (l4proto->print_conntrack) > > + l4proto->print_conntrack(s, ct); > > + > > + if (seq_has_overflowed(s)) > > goto release; > > Its not obvious to me why nf_conntrack_l3proto_ipv4_compat now calls > seq_has_overflowed ... > > > > diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c > > index cf65a1e040dd..348aa3602787 100644 > > --- a/net/netfilter/nf_conntrack_standalone.c > > +++ b/net/netfilter/nf_conntrack_standalone.c > > @@ -199,8 +199,8 @@ static int ct_seq_show(struct seq_file *s, void *v) > > ? (long)(ct->timeout.expires - jiffies)/HZ : 0) != 0) > > goto release; > > > > - if (l4proto->print_conntrack && l4proto->print_conntrack(s, ct)) > > - goto release; > > + if (l4proto->print_conntrack) > > + l4proto->print_conntrack(s, ct); > > > > if (print_tuple(s, &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple, > > l3proto, l4proto)) > > ... while nf_conntrack_standalone does not. Oh, looks like it was added here in patch 3/8. The reason for the two patches is that patch 3/8 is from Joe. I added places that he missed, and put that patch before his (2/8). -- Steve