From 7790c8c1996ad89a22b8bd194a230cf23ee67f4b Mon Sep 17 00:00:00 2001 From: Conrad Meyer Date: Thu, 17 Oct 2019 16:23:03 +0000 Subject: Split out a more generic debugnet(4) from netdump(4) Debugnet is a simplistic and specialized panic- or debug-time reliable datagram transport. It can drive a single connection at a time and is currently unidirectional (debug/panic machine transmit to remote server only). It is mostly a verbatim code lift from netdump(4). Netdump(4) remains the only consumer (until the rest of this patch series lands). The INET-specific logic has been extracted somewhat more thoroughly than previously in netdump(4), into debugnet_inet.c. UDP-layer logic and up, as much as possible as is protocol-independent, remains in debugnet.c. The separation is not perfect and future improvement is welcome. Supporting INET6 is a long-term goal. Much of the diff is "gratuitous" renaming from 'netdump_' or 'nd_' to 'debugnet_' or 'dn_' -- sorry. I thought keeping the netdump name on the generic module would be more confusing than the refactoring. The only functional change here is the mbuf allocation / tracking. Instead of initiating solely on netdump-configured interface(s) at dumpon(8) configuration time, we watch for any debugnet-enabled NIC for link activation and query it for mbuf parameters at that time. If they exceed the existing high-water mark allocation, we re-allocate and track the new high-water mark. Otherwise, we leave the pre-panic mbuf allocation alone. In a future patch in this series, this will allow initiating netdump from panic ddb(4) without pre-panic configuration. No other functional change intended. Reviewed by: markj (earlier version) Some discussion with: emaste, jhb Objection from: marius Differential Revision: https://reviews.freebsd.org/D21421 --- sys/conf/options | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sys/conf/options') diff --git a/sys/conf/options b/sys/conf/options index 96af0bf1e24d..d9ea0a821cb3 100644 --- a/sys/conf/options +++ b/sys/conf/options @@ -321,6 +321,8 @@ NETSMB opt_netsmb.h # Enable netdump(4) client support. NETDUMP opt_global.h +# Enable debugnet(4) networking support. +DEBUGNET opt_global.h # Options used only in subr_param.c. HZ opt_param.h -- cgit v1.2.3