freebsd-nq/usr.sbin/bhyve
Rodney W. Grimes 01d822d33b Add the ability to control the CPU topology of created VMs
from userland without the need to use sysctls, it allows the old
sysctls to continue to function, but deprecates them at
FreeBSD_version 1200060 (Relnotes for deprecate).

The command line of bhyve is maintained in a backwards compatible way.
The API of libvmmapi is maintained in a backwards compatible way.
The sysctl's are maintained in a backwards compatible way.

Added command option looks like:
bhyve -c [[cpus=]n][,sockets=n][,cores=n][,threads=n][,maxcpus=n]
The optional parts can be specified in any order, but only a single
integer invokes the backwards compatible parse.  [,maxcpus=n] is
hidden by #ifdef until kernel support is added, though the api
is put in place.

bhyvectl --get-cpu-topology option added.

Reviewed by:	grehan (maintainer, earlier version),
Reviewed by:	bcr (manpages)
Approved by:	bde (mentor), phk (mentor)
Tested by:	Oleg Ginzburg <olevole@olevole.ru> (cbsd)
MFC after:	1 week
Relnotes:	Y
Differential Revision:	https://reviews.freebsd.org/D9930
2018-04-08 19:24:49 +00:00
..
acpi.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
acpi.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
ahci.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
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 Add the ability to control the CPU topology of created VMs 2018-04-08 19:24:49 +00:00
bhyvegc.c bhyvegc_resize: make use of reallocarray(3) for bounds-checking. 2017-05-24 14:24:47 +00:00
bhyvegc.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
bhyverun.c Add the ability to control the CPU topology of created VMs 2018-04-08 19:24:49 +00:00
bhyverun.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
block_if.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
block_if.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
bootrom.c Restructure memory allocation in bhyve to support "devmem". 2015-06-18 06:00:17 +00:00
bootrom.h Restructure memory allocation in bhyve to support "devmem". 2015-06-18 06:00:17 +00:00
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 various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
dbgport.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
dbgport.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
fwctl.c Use MIN()/MAX() macros from sys/param.h. 2016-04-22 06:25:32 +00:00
fwctl.h Simple sysctl-like firmware query interface. Similar in operation 2015-10-02 21:09:49 +00:00
inout.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
inout.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
ioapic.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
ioapic.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
Makefile Add VNC Authentication support based on RFC6143 section 7.2.2. 2017-06-02 02:35:16 +00:00
Makefile.depend DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
mem.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
mem.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
mevent_test.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
mevent.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
mevent.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
mptbl.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
mptbl.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_ahci.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_e82545.c bhyve/pci_e82545.c: squelch gcc warning for noreturn procedure 2017-07-28 21:42:59 +00:00
pci_emul.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_emul.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_fbuf.c Add VNC Authentication support based on RFC6143 section 7.2.2. 2017-06-02 02:35:16 +00:00
pci_hostbridge.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
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 various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_lpc.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_passthru.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_uart.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_virtio_block.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_virtio_console.c Capsicum support for bhyve(8). 2017-02-14 13:35:59 +00:00
pci_virtio_net.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
pci_virtio_rnd.c Capsicum support for bhyve(8). 2017-02-14 13:35:59 +00:00
pci_xhci.c Make comments match the code. No functional change. 2017-04-28 05:09:51 +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 various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
post.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
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 Make sure the 'Always-one' bit is always set to one, 2017-01-08 20:29:35 +00:00
ps2mouse.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
rfb.c Check if pthread_create(3) successfully created the thread prior to call 2017-06-16 01:26:01 +00:00
rfb.h Add VNC Authentication support based on RFC6143 section 7.2.2. 2017-06-02 02:35:16 +00:00
rtc.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
rtc.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
smbiostbl.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
smbiostbl.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
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 various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
spinup_ap.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
task_switch.c Fix CTASSERT issue in a more clean way 2016-07-06 16:02:15 +00:00
uart_emul.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
uart_emul.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
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 This fixes a typo in bhyve's USB mouse emulation. 2017-03-22 16:53:03 +00:00
vga.c bhyve/vga.c: fix atc_color_select_67 bit shift 2017-07-28 21:47:10 +00:00
vga.h Import bhyve_graphics into CURRENT. Thanks to all who tested 2016-07-04 03:19:06 +00:00
virtio.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
virtio.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
xmsr.c various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00
xmsr.h various: general adoption of SPDX licensing ID tags. 2017-11-27 15:37:16 +00:00