]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFH: r309295
authorjulian <julian@FreeBSD.org>
Fri, 2 Dec 2016 08:24:00 +0000 (08:24 +0000)
committerjulian <julian@FreeBSD.org>
Fri, 2 Dec 2016 08:24:00 +0000 (08:24 +0000)
commit5c325f007b252a394e014fef7ff608a260222247
treea02e87406259c28885f51f83328394438730b1bf
parent0465785c41747214c1e081431fe93a9daacdc6fd
MFH: r309295

bhyve: stability and performance improvement for dbgport

The TCP server implementation in dbgport does not track clients, so it
may try to write to a disconected socket resulting in SIGPIPE.
Avoid that by setting SO_NOSIGPIPE socket option.

Because dbgport emulates an I/O port to guest, the communication is done
byte by byte.  Reduce latency of the TCP/IP transfers by using
TCP_NODELAY option.  In my tests that change improves performance of
kgdb commands with lots of output (e.g. info threads) by two orders of
magnitude.

A general note.  Since we have a uart emulation in bhyve, that can be
used for the console and gdb access to guests.  So, bvmconsole and bvmdebug
could be de-orbited now.  But there are many existing deployments that
still dependend on those.

Discussed with: julian, jhb
Sponsored by: Panzura
usr.sbin/bhyve/dbgport.c