Message ID | 1524519420-1612-1-git-send-email-amsalam20@gmail.com |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
Series | [net-next,1/2] ipv6: sr: add a per namespace sysctl to control seg6 flowlabel | expand |
From: Ahmed Abdelsalam <amsalam20@gmail.com> Date: Mon, 23 Apr 2018 23:36:59 +0200 > This patch adds a per namespace sysctl, named 'seg6_flowlabel', to be used > by seg6_do_srh_encap() to control the behaviour of setting the flowlabel > value of outer IPv6. > > The currently support behaviours are as follows: > -1 set flowlabel to zero. > 0 copy flowlabel from Inner paceket in case of Inner IPv6 (0 for IPv4/L2) > 1 Compute the flowlabel using seg6_make_flowlabel() > > Signed-off-by: Ahmed Abdelsalam <amsalam20@gmail.com> There really isn't a reason to make this a separate patch. Adding a sysctl that nothing refers to doesn't add much value. So please combine patches #1 and #2.
On Tue, 24 Apr 2018 13:16:50 -0400 (EDT) David Miller <davem@davemloft.net> wrote: > From: Ahmed Abdelsalam <amsalam20@gmail.com> > Date: Mon, 23 Apr 2018 23:36:59 +0200 > > > This patch adds a per namespace sysctl, named 'seg6_flowlabel', to be used > > by seg6_do_srh_encap() to control the behaviour of setting the flowlabel > > value of outer IPv6. > > > > The currently support behaviours are as follows: > > -1 set flowlabel to zero. > > 0 copy flowlabel from Inner paceket in case of Inner IPv6 (0 for IPv4/L2) > > 1 Compute the flowlabel using seg6_make_flowlabel() > > > > Signed-off-by: Ahmed Abdelsalam <amsalam20@gmail.com> > > There really isn't a reason to make this a separate patch. > > Adding a sysctl that nothing refers to doesn't add much value. > > So please combine patches #1 and #2. Ok, I will combine them and send you a new patch. Thanks
diff --git a/include/net/netns/ipv6.h b/include/net/netns/ipv6.h index 97b3a54..c978a31 100644 --- a/include/net/netns/ipv6.h +++ b/include/net/netns/ipv6.h @@ -43,6 +43,7 @@ struct netns_sysctl_ipv6 { int max_hbh_opts_cnt; int max_dst_opts_len; int max_hbh_opts_len; + int seg6_flowlabel; }; struct netns_ipv6 { diff --git a/net/ipv6/sysctl_net_ipv6.c b/net/ipv6/sysctl_net_ipv6.c index 6fbdef6..e15cd37 100644 --- a/net/ipv6/sysctl_net_ipv6.c +++ b/net/ipv6/sysctl_net_ipv6.c @@ -152,6 +152,13 @@ static struct ctl_table ipv6_table_template[] = { .extra1 = &zero, .extra2 = &one, }, + { + .procname = "seg6_flowlabel", + .data = &init_net.ipv6.sysctl.seg6_flowlabel, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec + }, { } }; @@ -217,6 +224,7 @@ static int __net_init ipv6_sysctl_net_init(struct net *net) ipv6_table[12].data = &net->ipv6.sysctl.max_dst_opts_len; ipv6_table[13].data = &net->ipv6.sysctl.max_hbh_opts_len; ipv6_table[14].data = &net->ipv6.sysctl.multipath_hash_policy, + ipv6_table[15].data = &net->ipv6.sysctl.seg6_flowlabel; ipv6_route_table = ipv6_route_sysctl_init(net); if (!ipv6_route_table)
This patch adds a per namespace sysctl, named 'seg6_flowlabel', to be used by seg6_do_srh_encap() to control the behaviour of setting the flowlabel value of outer IPv6. The currently support behaviours are as follows: -1 set flowlabel to zero. 0 copy flowlabel from Inner paceket in case of Inner IPv6 (0 for IPv4/L2) 1 Compute the flowlabel using seg6_make_flowlabel() Signed-off-by: Ahmed Abdelsalam <amsalam20@gmail.com> --- include/net/netns/ipv6.h | 1 + net/ipv6/sysctl_net_ipv6.c | 8 ++++++++ 2 files changed, 9 insertions(+)