Arnd Bergmann
2023-May-16 19:45 UTC
[Bridge] [PATCH 3/4] bridge: always declare tunnel functions
From: Arnd Bergmann <arnd at arndb.de>
When CONFIG_BRIDGE_VLAN_FILTERING is disabled, two functions are still
defined but have no prototype or caller. This causes a W=1 warning for
the missing prototypes:
net/bridge/br_netlink_tunnel.c:29:6: error: no previous prototype for
'vlan_tunid_inrange' [-Werror=missing-prototypes]
net/bridge/br_netlink_tunnel.c:199:5: error: no previous prototype for
'br_vlan_tunnel_info' [-Werror=missing-prototypes]
The functions are already contitional on CONFIG_BRIDGE_VLAN_FILTERING,
and I coulnd't easily figure out the right set of #ifdefs, so just
move the declarations out of the #ifdef to avoid the warning,
at a small cost in code size over a more elaborate fix.
Signed-off-by: Arnd Bergmann <arnd at arndb.de>
---
net/bridge/br_private_tunnel.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/net/bridge/br_private_tunnel.h b/net/bridge/br_private_tunnel.h
index 2b053289f016..efb096025151 100644
--- a/net/bridge/br_private_tunnel.h
+++ b/net/bridge/br_private_tunnel.h
@@ -27,6 +27,10 @@ int br_process_vlan_tunnel_info(const struct net_bridge *br,
int br_get_vlan_tunnel_info_size(struct net_bridge_vlan_group *vg);
int br_fill_vlan_tunnel_info(struct sk_buff *skb,
struct net_bridge_vlan_group *vg);
+bool vlan_tunid_inrange(const struct net_bridge_vlan *v_curr,
+ const struct net_bridge_vlan *v_last);
+int br_vlan_tunnel_info(const struct net_bridge_port *p, int cmd,
+ u16 vid, u32 tun_id, bool *changed);
#ifdef CONFIG_BRIDGE_VLAN_FILTERING
/* br_vlan_tunnel.c */
@@ -43,10 +47,6 @@ void br_handle_ingress_vlan_tunnel(struct sk_buff *skb,
struct net_bridge_vlan_group *vg);
int br_handle_egress_vlan_tunnel(struct sk_buff *skb,
struct net_bridge_vlan *vlan);
-bool vlan_tunid_inrange(const struct net_bridge_vlan *v_curr,
- const struct net_bridge_vlan *v_last);
-int br_vlan_tunnel_info(const struct net_bridge_port *p, int cmd,
- u16 vid, u32 tun_id, bool *changed);
#else
static inline int vlan_tunnel_init(struct net_bridge_vlan_group *vg)
{
--
2.39.2
Nikolay Aleksandrov
2023-May-17 07:33 UTC
[Bridge] [PATCH 3/4] bridge: always declare tunnel functions
On 16/05/2023 22:45, Arnd Bergmann wrote:> From: Arnd Bergmann <arnd at arndb.de> > > When CONFIG_BRIDGE_VLAN_FILTERING is disabled, two functions are still > defined but have no prototype or caller. This causes a W=1 warning for > the missing prototypes: > > net/bridge/br_netlink_tunnel.c:29:6: error: no previous prototype for 'vlan_tunid_inrange' [-Werror=missing-prototypes] > net/bridge/br_netlink_tunnel.c:199:5: error: no previous prototype for 'br_vlan_tunnel_info' [-Werror=missing-prototypes] > > The functions are already contitional on CONFIG_BRIDGE_VLAN_FILTERING, > and I coulnd't easily figure out the right set of #ifdefs, so just > move the declarations out of the #ifdef to avoid the warning, > at a small cost in code size over a more elaborate fix. > > Signed-off-by: Arnd Bergmann <arnd at arndb.de> > --- > net/bridge/br_private_tunnel.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) >This should be for -net. Fixes: 188c67dd1906 ("net: bridge: vlan options: add support for tunnel id dumping") Fixes: 569da0822808 ("net: bridge: vlan options: add support for tunnel mapping set/del") Acked-by: Nikolay Aleksandrov <razor at blackwall.org> Thanks, Nik