batman-adv: debugfs, avoid compiling for !DEBUG_FS
Normally the debugfs framework will return error pointer with -ENODEV for function calls when DEBUG_FS is not set. batman does not notice this error code and continues trying to create debugfs files and executes more code. We can avoid this code execution by disabling compiling debugfs.c when DEBUG_FS is not set. Signed-off-by: Markus Pargmann <mpa@pengutronix.de> Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
This commit is contained in:
parent
83e8b87721
commit
9bb218828c
|
@ -20,7 +20,7 @@ obj-$(CONFIG_BATMAN_ADV) += batman-adv.o
|
||||||
batman-adv-y += bat_iv_ogm.o
|
batman-adv-y += bat_iv_ogm.o
|
||||||
batman-adv-y += bitarray.o
|
batman-adv-y += bitarray.o
|
||||||
batman-adv-$(CONFIG_BATMAN_ADV_BLA) += bridge_loop_avoidance.o
|
batman-adv-$(CONFIG_BATMAN_ADV_BLA) += bridge_loop_avoidance.o
|
||||||
batman-adv-y += debugfs.o
|
batman-adv-$(CONFIG_DEBUG_FS) += debugfs.o
|
||||||
batman-adv-$(CONFIG_BATMAN_ADV_DAT) += distributed-arp-table.o
|
batman-adv-$(CONFIG_BATMAN_ADV_DAT) += distributed-arp-table.o
|
||||||
batman-adv-y += fragmentation.o
|
batman-adv-y += fragmentation.o
|
||||||
batman-adv-y += gateway_client.o
|
batman-adv-y += gateway_client.o
|
||||||
|
|
|
@ -482,11 +482,7 @@ rem_attr:
|
||||||
debugfs_remove_recursive(hard_iface->debug_dir);
|
debugfs_remove_recursive(hard_iface->debug_dir);
|
||||||
hard_iface->debug_dir = NULL;
|
hard_iface->debug_dir = NULL;
|
||||||
out:
|
out:
|
||||||
#ifdef CONFIG_DEBUG_FS
|
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
#else
|
|
||||||
return 0;
|
|
||||||
#endif /* CONFIG_DEBUG_FS */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -541,11 +537,7 @@ rem_attr:
|
||||||
debugfs_remove_recursive(bat_priv->debug_dir);
|
debugfs_remove_recursive(bat_priv->debug_dir);
|
||||||
bat_priv->debug_dir = NULL;
|
bat_priv->debug_dir = NULL;
|
||||||
out:
|
out:
|
||||||
#ifdef CONFIG_DEBUG_FS
|
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
#else
|
|
||||||
return 0;
|
|
||||||
#endif /* CONFIG_DEBUG_FS */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void batadv_debugfs_del_meshif(struct net_device *dev)
|
void batadv_debugfs_del_meshif(struct net_device *dev)
|
||||||
|
|
|
@ -20,6 +20,8 @@
|
||||||
|
|
||||||
#define BATADV_DEBUGFS_SUBDIR "batman_adv"
|
#define BATADV_DEBUGFS_SUBDIR "batman_adv"
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_DEBUG_FS)
|
||||||
|
|
||||||
void batadv_debugfs_init(void);
|
void batadv_debugfs_init(void);
|
||||||
void batadv_debugfs_destroy(void);
|
void batadv_debugfs_destroy(void);
|
||||||
int batadv_debugfs_add_meshif(struct net_device *dev);
|
int batadv_debugfs_add_meshif(struct net_device *dev);
|
||||||
|
@ -27,4 +29,36 @@ void batadv_debugfs_del_meshif(struct net_device *dev);
|
||||||
int batadv_debugfs_add_hardif(struct batadv_hard_iface *hard_iface);
|
int batadv_debugfs_add_hardif(struct batadv_hard_iface *hard_iface);
|
||||||
void batadv_debugfs_del_hardif(struct batadv_hard_iface *hard_iface);
|
void batadv_debugfs_del_hardif(struct batadv_hard_iface *hard_iface);
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
static inline void batadv_debugfs_init(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void batadv_debugfs_destroy(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline int batadv_debugfs_add_meshif(struct net_device *dev)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void batadv_debugfs_del_meshif(struct net_device *dev)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline
|
||||||
|
int batadv_debugfs_add_hardif(struct batadv_hard_iface *hard_iface)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline
|
||||||
|
void batadv_debugfs_del_hardif(struct batadv_hard_iface *hard_iface)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* _NET_BATMAN_ADV_DEBUGFS_H_ */
|
#endif /* _NET_BATMAN_ADV_DEBUGFS_H_ */
|
||||||
|
|
Loading…
Reference in New Issue