]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFH: r309295
authorjulian <julian@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Fri, 2 Dec 2016 08:21:25 +0000 (08:21 +0000)
committerjulian <julian@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Fri, 2 Dec 2016 08:21:25 +0000 (08:21 +0000)
commit4118c4da41e289917b64e6c001502761811df4a4
tree25743260b420a8747549de2310ce6a32b7757032
parentb03d494c984891fc75c5e0f7dde6778b8ae58614
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

git-svn-id: svn://svn.freebsd.org/base/stable/10@309401 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
usr.sbin/bhyve/dbgport.c