Message ID | 1389663588-29678-4-git-send-email-fan.du@windriver.com |
---|---|
State | Awaiting Upstream, archived |
Delegated to: | David Miller |
Headers | show |
2014-01-14, 09:39:46 +0800, Fan Du wrote: > Bump flow cache genid, and flush flow cache should also be made > in per net style. > > Signed-off-by: Fan Du <fan.du@windriver.com> > --- > net/xfrm/xfrm_policy.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c > index e205c4b..d39c90f 100644 > --- a/net/xfrm/xfrm_policy.c > +++ b/net/xfrm/xfrm_policy.c > @@ -661,7 +661,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl) > hlist_add_head(&policy->bydst, chain); > xfrm_pol_hold(policy); > net->xfrm.policy_count[dir]++; > - atomic_inc(&flow_cache_genid); > + atomic_inc(&net->xfrm.flow_cache_genid); > > /* After previous checking, family can either be AF_INET or AF_INET6 */ > if (policy->family == AF_INET) > @@ -2567,14 +2567,14 @@ static void __xfrm_garbage_collect(struct net *net) > > void xfrm_garbage_collect(struct net *net) > { > - flow_cache_flush(); > + flow_cache_flush(net); > __xfrm_garbage_collect(net); > } > EXPORT_SYMBOL(xfrm_garbage_collect); > > static void xfrm_garbage_collect_deferred(struct net *net) > { > - flow_cache_flush_deferred(); > + flow_cache_flush_deferred(net); > __xfrm_garbage_collect(net); > } > > @@ -2947,6 +2947,7 @@ static int __net_init xfrm_net_init(struct net *net) > spin_lock_init(&net->xfrm.xfrm_policy_sk_bundle_lock); > mutex_init(&net->xfrm.xfrm_cfg_mutex); > > + flow_cache_init(net); > return 0; > > out_sysctl: You didn't address Cong Wang's comments for v1: 2014-01-13, 11:42:47 -0800, Cong Wang wrote: > On Sun, Jan 12, 2014 at 11:49 PM, Fan Du <fan.du@windriver.com> wrote: > > void xfrm_garbage_collect(struct net *net) > > { > > - flow_cache_flush(); > > + flow_cache_flush(net); > > __xfrm_garbage_collect(net); > > } > > EXPORT_SYMBOL(xfrm_garbage_collect); > > > > static void xfrm_garbage_collect_deferred(struct net *net) > > { > > - flow_cache_flush_deferred(); > > + flow_cache_flush_deferred(net); > > __xfrm_garbage_collect(net); > > } > > > > You changed the prototypes of flow_cache_flush*() in the previous > patch, so, here you break bisect. They have to be in one commit.
On 2014年01月15日 02:59, Sabrina Dubroca wrote: > 2014-01-14, 09:39:46 +0800, Fan Du wrote: >> Bump flow cache genid, and flush flow cache should also be made >> in per net style. >> >> Signed-off-by: Fan Du<fan.du@windriver.com> >> --- >> net/xfrm/xfrm_policy.c | 7 ++++--- >> 1 file changed, 4 insertions(+), 3 deletions(-) >> >> diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c >> index e205c4b..d39c90f 100644 >> --- a/net/xfrm/xfrm_policy.c >> +++ b/net/xfrm/xfrm_policy.c >> @@ -661,7 +661,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl) >> hlist_add_head(&policy->bydst, chain); >> xfrm_pol_hold(policy); >> net->xfrm.policy_count[dir]++; >> - atomic_inc(&flow_cache_genid); >> + atomic_inc(&net->xfrm.flow_cache_genid); >> >> /* After previous checking, family can either be AF_INET or AF_INET6 */ >> if (policy->family == AF_INET) >> @@ -2567,14 +2567,14 @@ static void __xfrm_garbage_collect(struct net *net) >> >> void xfrm_garbage_collect(struct net *net) >> { >> - flow_cache_flush(); >> + flow_cache_flush(net); >> __xfrm_garbage_collect(net); >> } >> EXPORT_SYMBOL(xfrm_garbage_collect); >> >> static void xfrm_garbage_collect_deferred(struct net *net) >> { >> - flow_cache_flush_deferred(); >> + flow_cache_flush_deferred(net); >> __xfrm_garbage_collect(net); >> } >> >> @@ -2947,6 +2947,7 @@ static int __net_init xfrm_net_init(struct net *net) >> spin_lock_init(&net->xfrm.xfrm_policy_sk_bundle_lock); >> mutex_init(&net->xfrm.xfrm_cfg_mutex); >> >> + flow_cache_init(net); >> return 0; >> >> out_sysctl: > > > You didn't address Cong Wang's comments for v1: Sorry, seems company email server didn't forward below message to me。。。 but I saw yours. I'm happy to forge the relevant patches into one single patch in next next version :) if Steffen doesn't complain. > > 2014-01-13, 11:42:47 -0800, Cong Wang wrote: >> On Sun, Jan 12, 2014 at 11:49 PM, Fan Du<fan.du@windriver.com> wrote: >>> void xfrm_garbage_collect(struct net *net) >>> { >>> - flow_cache_flush(); >>> + flow_cache_flush(net); >>> __xfrm_garbage_collect(net); >>> } >>> EXPORT_SYMBOL(xfrm_garbage_collect); >>> >>> static void xfrm_garbage_collect_deferred(struct net *net) >>> { >>> - flow_cache_flush_deferred(); >>> + flow_cache_flush_deferred(net); >>> __xfrm_garbage_collect(net); >>> } >>> >> >> You changed the prototypes of flow_cache_flush*() in the previous >> patch, so, here you break bisect. They have to be in one commit. > >
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c index e205c4b..d39c90f 100644 --- a/net/xfrm/xfrm_policy.c +++ b/net/xfrm/xfrm_policy.c @@ -661,7 +661,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl) hlist_add_head(&policy->bydst, chain); xfrm_pol_hold(policy); net->xfrm.policy_count[dir]++; - atomic_inc(&flow_cache_genid); + atomic_inc(&net->xfrm.flow_cache_genid); /* After previous checking, family can either be AF_INET or AF_INET6 */ if (policy->family == AF_INET) @@ -2567,14 +2567,14 @@ static void __xfrm_garbage_collect(struct net *net) void xfrm_garbage_collect(struct net *net) { - flow_cache_flush(); + flow_cache_flush(net); __xfrm_garbage_collect(net); } EXPORT_SYMBOL(xfrm_garbage_collect); static void xfrm_garbage_collect_deferred(struct net *net) { - flow_cache_flush_deferred(); + flow_cache_flush_deferred(net); __xfrm_garbage_collect(net); } @@ -2947,6 +2947,7 @@ static int __net_init xfrm_net_init(struct net *net) spin_lock_init(&net->xfrm.xfrm_policy_sk_bundle_lock); mutex_init(&net->xfrm.xfrm_cfg_mutex); + flow_cache_init(net); return 0; out_sysctl:
Bump flow cache genid, and flush flow cache should also be made in per net style. Signed-off-by: Fan Du <fan.du@windriver.com> --- net/xfrm/xfrm_policy.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)