Stephen Hemminger
2019-Jun-06 15:14 UTC
[Bridge] [PATCH RESEND net-next 1/2] br_netfilter: add struct netns_brnf
On Thu, 6 Jun 2019 13:41:41 +0200 Christian Brauner <christian at brauner.io> wrote:> +struct netns_brnf { > +#ifdef CONFIG_SYSCTL > + struct ctl_table_header *ctl_hdr; > +#endif > + > + /* default value is 1 */ > + int call_iptables; > + int call_ip6tables; > + int call_arptables; > + > + /* default value is 0 */ > + int filter_vlan_tagged; > + int filter_pppoe_tagged; > + int pass_vlan_indev; > +};Do you really need to waste four bytes for each flag value. If you use a u8 that would work just as well. Bool would also work but the kernel developers frown on bool in structures.
Christian Brauner
2019-Jun-06 15:19 UTC
[Bridge] [PATCH RESEND net-next 1/2] br_netfilter: add struct netns_brnf
On Thu, Jun 06, 2019 at 08:14:40AM -0700, Stephen Hemminger wrote:> On Thu, 6 Jun 2019 13:41:41 +0200 > Christian Brauner <christian at brauner.io> wrote: > > > +struct netns_brnf { > > +#ifdef CONFIG_SYSCTL > > + struct ctl_table_header *ctl_hdr; > > +#endif > > + > > + /* default value is 1 */ > > + int call_iptables; > > + int call_ip6tables; > > + int call_arptables; > > + > > + /* default value is 0 */ > > + int filter_vlan_tagged; > > + int filter_pppoe_tagged; > > + int pass_vlan_indev; > > +}; > > Do you really need to waste four bytes for each > flag value. If you use a u8 that would work just as well.I think we had discussed something like this but the problem why we can't do this stems from how the sysctl-table stuff is implemented. I distinctly remember that it couldn't be done with a flag due to that. Christian