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 (mailing list archive)
State Not Applicable
Delegated to: Netdev Maintainers
Headers show
Series [net-next,v2,1/3] net: evaluate net.ipvX.conf.all.ignore_routes_with_linkdown | 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), \
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), \