On Wed, Aug 28, 2024 at 09:35:35AM +0800, Hongbo Li wrote: > > > On 2024/8/28 0:15, Pablo Neira Ayuso wrote: > > Hi, > > > > On Tue, Aug 27, 2024 at 06:04:05PM +0800, Hongbo Li wrote: > > > list_head can be initialized automatically with LIST_HEAD() > > > instead of calling INIT_LIST_HEAD(). Here we can simplify > > > the code. > > > > > > Signed-off-by: Hongbo Li <lihongbo22@xxxxxxxxxx> > > > --- > > > net/netfilter/core.c | 4 +--- > > > 1 file changed, 1 insertion(+), 3 deletions(-) > > > > > > diff --git a/net/netfilter/core.c b/net/netfilter/core.c > > > index b00fc285b334..93642fcd379c 100644 > > > --- a/net/netfilter/core.c > > > +++ b/net/netfilter/core.c > > > @@ -655,10 +655,8 @@ void nf_hook_slow_list(struct list_head *head, struct nf_hook_state *state, > > > const struct nf_hook_entries *e) > > > { > > > struct sk_buff *skb, *next; > > > - struct list_head sublist; > > > int ret; > > > - > > > - INIT_LIST_HEAD(&sublist); > > > + LIST_HEAD(sublist); > > > > comestic: > > > > struct sk_buff *skb, *next; > > LIST_HEAD(sublist); <- here > > int ret; > > > > I think this should be included in the variable declaration area at > > the beginning of this function. > > It is in the variable declaration area just after ret (with a blank line > before list_for_each_entry_safe). Indeed. It is reverse xmas tree what I was missing then. Thanks.