| 1 | # SPDX-License-Identifier: GPL-2.0-only |
| 2 | |
| 3 | config NET_DEV_REFCNT_TRACKER |
| 4 | bool "Enable net device refcount tracking" |
| 5 | depends on DEBUG_KERNEL && STACKTRACE_SUPPORT && NET |
| 6 | select REF_TRACKER |
| 7 | default n |
| 8 | help |
| 9 | Enable debugging feature to track device references. |
| 10 | This adds memory and cpu costs. |
| 11 | |
| 12 | config NET_NS_REFCNT_TRACKER |
| 13 | bool "Enable networking namespace refcount tracking" |
| 14 | depends on DEBUG_KERNEL && STACKTRACE_SUPPORT && NET |
| 15 | select REF_TRACKER |
| 16 | default n |
| 17 | help |
| 18 | Enable debugging feature to track netns references. |
| 19 | This adds memory and cpu costs. |
| 20 | |
| 21 | config DEBUG_NET |
| 22 | bool "Add generic networking debug" |
| 23 | depends on DEBUG_KERNEL && NET |
| 24 | help |
| 25 | Enable extra sanity checks in networking. |
| 26 | This is mostly used by fuzzers, but is safe to select. |
| 27 | |
| 28 | config DEBUG_NET_SMALL_RTNL |
| 29 | bool "Add extra per-netns mutex inside RTNL" |
| 30 | depends on DEBUG_KERNEL && NET && LOCK_DEBUGGING_SUPPORT |
| 31 | select PROVE_LOCKING |
| 32 | default n |
| 33 | help |
| 34 | rtnl_lock() is being replaced with rtnl_net_lock() that |
| 35 | acquires the global RTNL and a small per-netns RTNL mutex. |
| 36 | |
| 37 | During the conversion, rtnl_net_lock() just adds an extra |
| 38 | mutex in every RTNL scope and slows down the operations. |
| 39 | |
| 40 | Once the conversion completes, rtnl_lock() will be removed |
| 41 | and rtnetlink will gain per-netns scalability. |