# SPDX-License-Identifier: GPL-2.0-only

config NET_DEV_REFCNT_TRACKER
	bool "Enable net device refcount tracking"
	depends on DEBUG_KERNEL && STACKTRACE_SUPPORT && NET
	select REF_TRACKER
	default n
	help
	  Enable debugging feature to track device references.
	  This adds memory and cpu costs.

config NET_NS_REFCNT_TRACKER
	bool "Enable networking namespace refcount tracking"
	depends on DEBUG_KERNEL && STACKTRACE_SUPPORT && NET
	select REF_TRACKER
	default n
	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 && NET
	help
	  Enable extra sanity checks in networking.
	  This is mostly used by fuzzers, but is safe to select.

config DEBUG_NET_SMALL_RTNL
	bool "Add extra per-netns mutex inside RTNL"
	depends on DEBUG_KERNEL && NET && LOCK_DEBUGGING_SUPPORT
	select PROVE_LOCKING
	default n
	help
	  rtnl_lock() is being replaced with rtnl_net_lock() that
	  acquires the global RTNL and a small per-netns RTNL mutex.

	  During the conversion, rtnl_net_lock() just adds an extra
	  mutex in every RTNL scope and slows down the operations.

	  Once the conversion completes, rtnl_lock() will be removed
	  and rtnetlink will gain per-netns scalability.
