On Fri, Mar 26, 2021 at 01:38:59PM -0400, Richard Guy Briggs wrote:
 @@ -8006,12 +7966,65 @@ static void nft_commit_notify(struct net
*net, u32 portid)
  	WARN_ON_ONCE(!list_empty(&net->nft.notify_list));
  }
  
 +static int nf_tables_commit_audit_alloc(struct list_head *adl,
 +				 struct nft_table *table)
 +{
 +	struct nft_audit_data *adp;
 +
 +	list_for_each_entry(adp, adl, list) {
 +		if (adp->table == table)
 +			return 0;
 +	}
 +	adp = kzalloc(sizeof(*adp), GFP_KERNEL);
 +	if (!adp)
 +		return -ENOMEM;
 +	adp->table = table;
 +	INIT_LIST_HEAD(&adp->list); 
This INIT_LIST_HEAD is not required for an object that is going to be
inserted into the 'adl' list.
 +	list_add(&adp->list, adl); 
If no objections, I'll amend this patch. I'll include the UAF fix and
remove this unnecessary INIT_LIST_HEAD.