Hi Laura,

On Mon, Jun 17, 2019 at 06:14:24PM +0200, Laura Garcia Liebana wrote:
[...]
> diff --git a/net/netfilter/nft_dynset.c b/net/netfilter/nft_dynset.c
> index 8394560aa695..df19844e994f 100644
> --- a/net/netfilter/nft_dynset.c
> +++ b/net/netfilter/nft_dynset.c
> @@ -24,6 +24,7 @@ struct nft_dynset {
>       enum nft_registers              sreg_data:8;
>       bool                            invert;
>       u64                             timeout;
> +     u64                             expiration;
>       struct nft_expr                 *expr;
>       struct nft_set_binding          binding;
>  };
> @@ -51,16 +52,18 @@ static void *nft_dynset_new(struct nft_set *set, const 
> struct nft_expr *expr,
>       const struct nft_dynset *priv = nft_expr_priv(expr);
>       struct nft_set_ext *ext;
>       u64 timeout;
> +     u64 expiration;
>       void *elem;
>  
>       if (!atomic_add_unless(&set->nelems, 1, set->size))
>               return NULL;
>  
>       timeout = priv->timeout ? : set->timeout;
> +     expiration = priv->expiration;
>       elem = nft_set_elem_init(set, &priv->tmpl,
>                                &regs->data[priv->sreg_key],
>                                &regs->data[priv->sreg_data],
> -                              timeout, GFP_ATOMIC);
> +                              timeout, expiration, GFP_ATOMIC);
                                          ^^^^^^^^^^

Probably better to replace 'expiration' by 0? priv->expiration is
never used / always set to zero, right?

Thanks!

Reply via email to