Date: Fri, 18 Oct 2019 07:48:16 -0500 From: Kyle Evans <self@kyle-evans.net> To: gljennjohn@gmail.com Cc: "Hartmann, O." <ohartmann@walstatt.org>, Conrad Meyer <cem@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>, svn-src-all <svn-src-all@freebsd.org>, src-committers <src-committers@freebsd.org> Subject: Re: svn commit: r353700 - in head: share/man/man4 sys/amd64/conf sys/conf sys/gdb sys/i386/conf sys/kern sys/net sys/sys Message-ID: <CACNAnaHJUQpB5hq8yTZ8%2BdYSE8LYEZui07K9=gFvnGUiKseQ2A@mail.gmail.com> In-Reply-To: <20191018140045.31d269b0@ernst.home> References: <201910172133.x9HLX1kl071044@repo.freebsd.org> <20191018122104.389ffb7a@hermann.fritz.box> <20191018140045.31d269b0@ernst.home>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Oct 18, 2019 at 7:00 AM Gary Jennejohn <gljennjohn@gmail.com> wrote: > > On Fri, 18 Oct 2019 12:21:04 +0200 > "Hartmann, O." <ohartmann@walstatt.org> wrote: > > > On Thu, 17 Oct 2019 21:33:01 +0000 (UTC) > > Conrad Meyer <cem@FreeBSD.org> wrote: > > > > > Author: cem > > > Date: Thu Oct 17 21:33:01 2019 > > > New Revision: 353700 > > > URL: https://svnweb.freebsd.org/changeset/base/353700 > > > > > > Log: > > > Implement NetGDB(4) > > > > > > NetGDB(4) is a component of a system using a panic-time network > > > stack to remotely debug crashed FreeBSD kernels over the network, > > > instead of traditional serial interfaces. > > > > > > There are three pieces in the complete NetGDB system. > > > > > > First, a dedicated proxy server must be running to accept > > > connections from both NetGDB and gdb(1), and pass bidirectional > > > traffic between the two protocols. > > > > > > Second, the NetGDB client is activated much like ordinary 'gdb' and > > > similarly to 'netdump' in ddb(4) after a panic. Like other > > > debugnet(4) clients (netdump(4)), the network interface on the route > > > to the proxy server must be online and support debugnet(4). > > > > > > Finally, the remote (k)gdb(1) uses 'target remote <proxy>:<port>' > > > (like any other TCP remote) to connect to the proxy server. > > > > > > The NetGDB v1 protocol speaks the literal GDB remote serial > > > protocol, and uses a 1:1 relationship between GDB packets and > > > sequences of debugnet packets (fragmented by MTU). There is no > > > encryption utilized to keep debugging sessions private, so this is > > > only appropriate for local segments or trusted networks. > > > > > > Submitted by: John Reimer <john.reimer AT emc.com> (earlier > > > version) Discussed some with: emaste, markj > > > Relnotes: sure > > > Differential Revision: https://reviews.freebsd.org/D21568 > > > > > > Added: > > > head/share/man/man4/netgdb.4 (contents, props changed) > > > head/sys/gdb/netgdb.c (contents, props changed) > > > head/sys/gdb/netgdb.h (contents, props changed) > > > Modified: > > > head/share/man/man4/Makefile > > > head/share/man/man4/ddb.4 > > > head/sys/amd64/conf/GENERIC > > > head/sys/conf/NOTES > > > head/sys/conf/files > > > head/sys/conf/options > > > head/sys/gdb/gdb.h > > > head/sys/gdb/gdb_int.h > > > head/sys/gdb/gdb_main.c > > > head/sys/gdb/gdb_packet.c > > > head/sys/i386/conf/GENERIC > > > head/sys/kern/subr_kdb.c > > > head/sys/net/debugnet.c > > > head/sys/net/debugnet.h > > > head/sys/net/debugnet_inet.c > > > head/sys/net/debugnet_int.h > > > head/sys/sys/kdb.h > > > head/sys/sys/param.h > > > > > > Modified: head/share/man/man4/Makefile > > > ============================================================================== > > > --- head/share/man/man4/Makefile Thu Oct 17 21:25:50 > > > 2019 (r353699) +++ head/share/man/man4/Makefile Thu Oct > > > 17 21:33:01 2019 (r353700) @@ -307,6 +307,7 @@ MAN= > > > aac.4 \ net80211.4 \ > > > netdump.4 \ > > > netfpga10g_nf10bmac.4 \ > > > + netgdb.4 \ > > > netgraph.4 \ > > > netintro.4 \ > > > netmap.4 \ > > > > > [...] > > > > > > Having "nooptions NETGDB # netgdb(4) client support" > > defined in my kernel config file, buildkernel fails with the error > > shown below. > > > > [...] > > --- debugnet.o --- > > /usr/src/sys/net/debugnet.c:662:4: error: implicit declaration of > > function 'db_printf' is invalid in C99 > > [-Werror,-Wimplicit-function-declaration] db_printf("%s: Could not get > > route for that server.\n", ^ /usr/src/sys/net/debugnet.c:662:4: note: > > did you mean 'if_printf'? /usr/src/sys/net/if_var.h:679:5: note: > > 'if_printf' declared here int if_printf(struct ifnet *, const char > > *, ...) __printflike(2, 3); ^ > > 1 error generated. > > And I also had to add "nooptions NETDUMP" to get the kernel to compile > and link. > diff --git a/sys/conf/files b/sys/conf/files index e47fe27466c..4bc5770e08c 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4298,7 +4298,7 @@ netinet/libalias/alias_mod.c optional libalias | netgraph_nat netinet/libalias/alias_proxy.c optional libalias inet | netgraph_nat inet netinet/libalias/alias_util.c optional libalias inet | netgraph_nat inet netinet/libalias/alias_sctp.c optional libalias inet | netgraph_nat inet -netinet/netdump/netdump_client.c optional inet netdump +netinet/netdump/netdump_client.c optional inet debugnet netdump netinet6/dest6.c optional inet6 netinet6/frag6.c optional inet6 netinet6/icmp6.c optional inet6 That should fix that one. Thanks, Kyle Evans
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACNAnaHJUQpB5hq8yTZ8%2BdYSE8LYEZui07K9=gFvnGUiKseQ2A>