[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1472560518.14381.291.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Tue, 30 Aug 2016 05:35:18 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Jamal Hadi Salim <jhs@...atatu.com>
Cc: davem@...emloft.net, netdev@...r.kernel.org, daniel@...earbox.net,
xiyou.wangcong@...il.com
Subject: Re: [PATCH v3 net-next 1/1] net_sched: Introduce skbmod action
On Tue, 2016-08-30 at 07:57 -0400, Jamal Hadi Salim wrote:
> rcu_assign_pointer(d->skbmod_p, p);
> if (ovr) {
> spin_unlock_bh(&d->tcf_lock);
> synchronize_rcu();
> }
>
> kfree(p_old);
Overall patch looks good Jamal, thanks.
synchronize_rcu() might bee to expensive if you plan to change actions
hundred of times per second.
You could instead add a 'struct rcu_head rcu;' field in struct
tcf_skbmod_params (but make sure this is not exported to user space)
Then :
if (ovr)
spin_unlock_bh(&d->tcf_lock);
kfree_rcu(p_old, rcu);
Powered by blists - more mailing lists