[6/9] batman-adv: Don't inform about dropped packets in nodebug
Commit Message
Information about dropped packets are usually only interesting for
debugging purposes and otherwise open the possibility to flood the logs
of the target machine with useless information.
pr_debug will not output those information on a nodebug kernel.
Reported-by: Vasiliy Kulikov <segooon@gmail.com>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
---
batman-adv/compat.h | 8 ++++++++
batman-adv/routing.c | 15 +++++++--------
batman-adv/vis.c | 2 +-
3 files changed, 16 insertions(+), 9 deletions(-)
@@ -90,6 +90,14 @@ static inline int skb_cow_head(struct sk_buff *skb, unsigned int headroom)
#define pr_warning(fmt, ...) \
printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
+#if defined(DEBUG)
+#define pr_debug(fmt, ...) \
+ printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
+#else
+#define pr_debug(fmt, ...) \
+ ({ if (0) printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); 0; })
+#endif
+
#define dev_get_by_name(x, y) dev_get_by_name(y)
#endif /* < KERNEL_VERSION(2, 6, 24) */
@@ -871,9 +871,9 @@ static int recv_icmp_ttl_exceeded(struct bat_priv *bat_priv,
/* send TTL exceeded if packet is an echo request (traceroute) */
if (icmp_packet->msg_type != ECHO_REQUEST) {
- pr_warning("Warning - can't forward icmp packet from %pM to "
- "%pM: ttl exceeded\n", icmp_packet->orig,
- icmp_packet->dst);
+ pr_debug("Warning - can't forward icmp packet from %pM to "
+ "%pM: ttl exceeded\n", icmp_packet->orig,
+ icmp_packet->dst);
return NET_RX_DROP;
}
@@ -1153,9 +1153,9 @@ static int route_unicast_packet(struct sk_buff *skb,
/* TTL exceeded */
if (unicast_packet->ttl < 2) {
- pr_warning("Warning - can't forward unicast packet from %pM to "
- "%pM: ttl exceeded\n", ethhdr->h_source,
- unicast_packet->dest);
+ pr_debug("Warning - can't forward unicast packet from %pM to "
+ "%pM: ttl exceeded\n", ethhdr->h_source,
+ unicast_packet->dest);
return NET_RX_DROP;
}
@@ -1236,8 +1236,7 @@ int recv_ucast_frag_packet(struct sk_buff *skb, struct batman_if *recv_if)
hash_find(bat_priv->orig_hash, unicast_packet->orig));
if (!orig_node) {
- pr_warning("couldn't find orig node for "
- "fragmentation\n");
+ pr_debug("couldn't find orig node for fragmentation\n");
spin_unlock_irqrestore(&bat_priv->orig_hash_lock,
flags);
return NET_RX_DROP;
@@ -746,7 +746,7 @@ static void send_vis_packet(struct bat_priv *bat_priv, struct vis_info *info)
packet = (struct vis_packet *)info->skb_packet->data;
if (packet->ttl < 2) {
- pr_warning("Error - can't send vis packet: ttl exceeded\n");
+ pr_debug("Error - can't send vis packet: ttl exceeded\n");
return;
}