freebsd-nq/usr.sbin/bhyve
Andriy Gapon 9aaefb2c53 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
MFC after:	2 weeks
Sponsored by:	Panzura
2016-11-29 13:11:00 +00:00
..
acpi.c
acpi.h
ahci.h
atkbdc.c Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
atkbdc.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
bhyve.8 Typo fixed: arbitraty -> arbitrary. 2016-10-17 09:40:18 +00:00
bhyvegc.c Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
bhyvegc.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
bhyverun.c Fix improper use of "its". 2016-11-08 23:59:41 +00:00
bhyverun.h Fix CTASSERT issue in a more clean way 2016-07-06 16:02:15 +00:00
block_if.c Improve error message when failing to open a backing file 2016-05-27 11:46:54 +00:00
block_if.h
bootrom.c
bootrom.h
console.c Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
console.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
consport.c
dbgport.c bhyve: stability and performance improvement for dbgport 2016-11-29 13:11:00 +00:00
dbgport.h
fwctl.c Use MIN()/MAX() macros from sys/param.h. 2016-04-22 06:25:32 +00:00
fwctl.h
inout.c
inout.h
ioapic.c Make PCI interupts allocation static when using bootrom (UEFI). 2016-07-14 17:16:10 +00:00
ioapic.h Make PCI interupts allocation static when using bootrom (UEFI). 2016-07-14 17:16:10 +00:00
Makefile Add virtio-console support to bhyve. 2016-09-17 13:48:01 +00:00
Makefile.depend DIRDEPS_BUILD: Update dependencies. 2016-08-31 19:30:46 +00:00
mem.c
mem.h
mevent_test.c
mevent.c
mevent.h
mptbl.c
mptbl.h
pci_ahci.c Fix NCQ TRIM emulation. 2016-07-17 14:13:47 +00:00
pci_e82545.c Invert calloc(3) argument order. 2016-08-30 12:40:12 +00:00
pci_emul.c Make PCI interupts allocation static when using bootrom (UEFI). 2016-07-14 17:16:10 +00:00
pci_emul.h Add emulation for multiple (up to 16) MSI vectors for AHCI. 2016-07-08 21:30:18 +00:00
pci_fbuf.c - Change the fbuf "vga" parameter to "vga=on|io|off". 2016-07-27 00:03:29 +00:00
pci_hostbridge.c
pci_irq.c Make PCI interupts allocation static when using bootrom (UEFI). 2016-07-14 17:16:10 +00:00
pci_irq.h Make PCI interupts allocation static when using bootrom (UEFI). 2016-07-14 17:16:10 +00:00
pci_lpc.c
pci_lpc.h
pci_passthru.c Fix gcc warnings 2016-07-06 05:05:03 +00:00
pci_uart.c
pci_virtio_block.c bhyve: replace uninitialized variable "offset". 2016-05-13 14:38:04 +00:00
pci_virtio_console.c virtio_console: handle short writes to an Unix domain socket gracefully. 2016-11-24 22:16:18 +00:00
pci_virtio_net.c
pci_virtio_rnd.c
pci_xhci.c Catch another case where an XHCI interrupt was being 2016-07-26 23:40:25 +00:00
pci_xhci.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
pm.c
post.c
ps2kbd.c Implement right shift/ctl, and convert the VNC/xorg scancode 2016-07-11 06:31:15 +00:00
ps2kbd.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
ps2mouse.c Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
ps2mouse.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
rfb.c Fix gcc build errors with SSE 4.2 detection and gcc warnings 2016-07-06 05:17:07 +00:00
rfb.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
rtc.c
rtc.h
smbiostbl.c
smbiostbl.h
sockstream.c Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
sockstream.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
spinup_ap.c
spinup_ap.h
task_switch.c Fix CTASSERT issue in a more clean way 2016-07-06 16:02:15 +00:00
uart_emul.c
uart_emul.h
usb_emul.c Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
usb_emul.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
usb_mouse.c Fix gcc warning 2016-07-06 05:17:56 +00:00
vga.c Fix unchecked array reference in the VGA device emulation code. 2016-10-25 17:13:58 +00:00
vga.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
virtio.c
virtio.h Add virtio-console support to bhyve. 2016-09-17 13:48:01 +00:00
xmsr.c
xmsr.h