net: add CONFIG_DEBUG_NET
authorEric Dumazet <edumazet@google.com>
Tue, 10 May 2022 03:57:38 +0000 (20:57 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 11 May 2022 11:43:10 +0000 (12:43 +0100)
This config option enables network debugging checks.

This patch adds DEBUG_NET_WARN_ON_ONCE(cond)
Note that this is not a replacement for WARN_ON_ONCE(cond)
as (cond) is not evaluated if CONFIG_DEBUG_NET is not set.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/net_debug.h
net/Kconfig.debug

index 19cd270..1e74684 100644 (file)
@@ -148,4 +148,10 @@ do {                                                               \
 #endif
 
 
+#if defined(CONFIG_DEBUG_NET)
+#define DEBUG_NET_WARN_ON_ONCE(cond) (void)WARN_ON_ONCE(cond)
+#else
+#define DEBUG_NET_WARN_ON_ONCE(cond) BUILD_BUG_ON_INVALID(cond)
+#endif
+
 #endif /* _LINUX_NET_DEBUG_H */
index 2f50611..a5781cf 100644 (file)
@@ -17,3 +17,10 @@ config NET_NS_REFCNT_TRACKER
        help
          Enable debugging feature to track netns references.
          This adds memory and cpu costs.
+
+config DEBUG_NET
+       bool "Add generic networking debug"
+       depends on DEBUG_KERNEL
+       help
+         Enable extra sanity checks in networking.
+         This is mostly used by fuzzers, but is safe to select.