diff mbox series

[net-next,v2,2/3] net: evaluate net.ipv4.conf.all.proxy_arp_pvlan

Message ID 20201107193515.1469030-3-vincent@bernat.ch
State New
Headers show
Series None | expand

Commit Message

Vincent Bernat Nov. 7, 2020, 7:35 p.m. UTC
Introduced in 65324144b50b, the "proxy_arp_vlan" sysctl is a
per-interface sysctl to tune proxy ARP support for private VLANs.
While the "all" variant is exposed, it was a noop and never evaluated.
We use the usual "or" logic for this kind of sysctls.

Fixes: 65324144b50b ("net: RFC3069, private VLAN proxy arp support")
Signed-off-by: Vincent Bernat <vincent@bernat.ch>
---
 include/linux/inetdevice.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jakub Kicinski Nov. 10, 2020, 11:21 p.m. UTC | #1
On Sat,  7 Nov 2020 20:35:14 +0100 Vincent Bernat wrote:
> Introduced in 65324144b50b, the "proxy_arp_vlan" sysctl is a

> per-interface sysctl to tune proxy ARP support for private VLANs.

> While the "all" variant is exposed, it was a noop and never evaluated.

> We use the usual "or" logic for this kind of sysctls.

> 

> Fixes: 65324144b50b ("net: RFC3069, private VLAN proxy arp support")

> Signed-off-by: Vincent Bernat <vincent@bernat.ch>

> ---

>  include/linux/inetdevice.h | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

> 


CC Jesper 

I know this is 10 year old code, but can we get an ack for applying
this to net-next?

> diff --git a/include/linux/inetdevice.h b/include/linux/inetdevice.h

> index 3bbcddd22df8..53aa0343bf69 100644

> --- a/include/linux/inetdevice.h

> +++ b/include/linux/inetdevice.h

> @@ -105,7 +105,7 @@ static inline void ipv4_devconf_setall(struct in_device *in_dev)

>  

>  #define IN_DEV_LOG_MARTIANS(in_dev)	IN_DEV_ORCONF((in_dev), LOG_MARTIANS)

>  #define IN_DEV_PROXY_ARP(in_dev)	IN_DEV_ORCONF((in_dev), PROXY_ARP)

> -#define IN_DEV_PROXY_ARP_PVLAN(in_dev)	IN_DEV_CONF_GET(in_dev, PROXY_ARP_PVLAN)

> +#define IN_DEV_PROXY_ARP_PVLAN(in_dev)	IN_DEV_ORCONF((in_dev), PROXY_ARP_PVLAN)

>  #define IN_DEV_SHARED_MEDIA(in_dev)	IN_DEV_ORCONF((in_dev), SHARED_MEDIA)

>  #define IN_DEV_TX_REDIRECTS(in_dev)	IN_DEV_ORCONF((in_dev), SEND_REDIRECTS)

>  #define IN_DEV_SEC_REDIRECTS(in_dev)	IN_DEV_ORCONF((in_dev), \
Jesper Dangaard Brouer Nov. 12, 2020, 7:44 a.m. UTC | #2
On Tue, 10 Nov 2020 15:21:18 -0800
Jakub Kicinski <kuba@kernel.org> wrote:

> On Sat,  7 Nov 2020 20:35:14 +0100 Vincent Bernat wrote:

> > Introduced in 65324144b50b, the "proxy_arp_vlan" sysctl is a

                                               ^ pvlan

The sysctl is called "proxy_arp_pvlan"

> > per-interface sysctl to tune proxy ARP support for private VLANs.

> > While the "all" variant is exposed, it was a noop and never evaluated.

> > We use the usual "or" logic for this kind of sysctls.

> > 

> > Fixes: 65324144b50b ("net: RFC3069, private VLAN proxy arp support")

> > Signed-off-by: Vincent Bernat <vincent@bernat.ch>

> > ---

> >  include/linux/inetdevice.h | 2 +-

> >  1 file changed, 1 insertion(+), 1 deletion(-)

> >   

> 

> CC Jesper 

> 

> I know this is 10 year old code, but can we get an ack for applying

> this to net-next?


ACK, I agree that the "all" variant doesn't make sense for proxy_arp_pvlan.

Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>


> > diff --git a/include/linux/inetdevice.h b/include/linux/inetdevice.h

> > index 3bbcddd22df8..53aa0343bf69 100644

> > --- a/include/linux/inetdevice.h

> > +++ b/include/linux/inetdevice.h

> > @@ -105,7 +105,7 @@ static inline void ipv4_devconf_setall(struct in_device *in_dev)

> >  

> >  #define IN_DEV_LOG_MARTIANS(in_dev)	IN_DEV_ORCONF((in_dev), LOG_MARTIANS)

> >  #define IN_DEV_PROXY_ARP(in_dev)	IN_DEV_ORCONF((in_dev), PROXY_ARP)

> > -#define IN_DEV_PROXY_ARP_PVLAN(in_dev)	IN_DEV_CONF_GET(in_dev, PROXY_ARP_PVLAN)

> > +#define IN_DEV_PROXY_ARP_PVLAN(in_dev)	IN_DEV_ORCONF((in_dev), PROXY_ARP_PVLAN)

> >  #define IN_DEV_SHARED_MEDIA(in_dev)	IN_DEV_ORCONF((in_dev), SHARED_MEDIA)

> >  #define IN_DEV_TX_REDIRECTS(in_dev)	IN_DEV_ORCONF((in_dev), SEND_REDIRECTS)

> >  #define IN_DEV_SEC_REDIRECTS(in_dev)	IN_DEV_ORCONF((in_dev), \  


-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer
diff mbox series

Patch

diff --git a/include/linux/inetdevice.h b/include/linux/inetdevice.h
index 3bbcddd22df8..53aa0343bf69 100644
--- a/include/linux/inetdevice.h
+++ b/include/linux/inetdevice.h
@@ -105,7 +105,7 @@  static inline void ipv4_devconf_setall(struct in_device *in_dev)
 
 #define IN_DEV_LOG_MARTIANS(in_dev)	IN_DEV_ORCONF((in_dev), LOG_MARTIANS)
 #define IN_DEV_PROXY_ARP(in_dev)	IN_DEV_ORCONF((in_dev), PROXY_ARP)
-#define IN_DEV_PROXY_ARP_PVLAN(in_dev)	IN_DEV_CONF_GET(in_dev, PROXY_ARP_PVLAN)
+#define IN_DEV_PROXY_ARP_PVLAN(in_dev)	IN_DEV_ORCONF((in_dev), PROXY_ARP_PVLAN)
 #define IN_DEV_SHARED_MEDIA(in_dev)	IN_DEV_ORCONF((in_dev), SHARED_MEDIA)
 #define IN_DEV_TX_REDIRECTS(in_dev)	IN_DEV_ORCONF((in_dev), SEND_REDIRECTS)
 #define IN_DEV_SEC_REDIRECTS(in_dev)	IN_DEV_ORCONF((in_dev), \