the bitrig marco_vmm branch has been updated by marco with 16 new commits: commit 914d8c11ab48181b343e5083810adae20602a3e6 diff: https://github.com/bitrig/bitrig/commit/914d8c1 author: reyk <[email protected]> date: Mon Dec 7 16:02:09 2015 +0000
Forcibly remove the local vm reference on error. M usr.sbin/vmd/vmm.c commit 5efe1f2604ba4ac79d5be6daa870b50d10689cb9 diff: https://github.com/bitrig/bitrig/commit/5efe1f2 author: reyk <[email protected]> date: Mon Dec 7 15:57:53 2015 +0000 Only increment the vm counter after successfully adding a new vm; the counter has to be in sync in the parent and vmm processes. This fixes reload after a previous load error. M usr.sbin/vmd/config.c commit f4f0d8141acba717c47a225c4eeed4c1d2a1e4b2 diff: https://github.com/bitrig/bitrig/commit/f4f0d81 author: reyk <[email protected]> date: Mon Dec 7 14:43:24 2015 +0000 Fix error handling in a few cases: some function return (-1) on error, while others return (errno) on error. We probably have to agree on something. M usr.sbin/vmd/config.c M usr.sbin/vmd/vmm.c commit 63b650a7a5bc7ad44a5d8285cb3dfb46f62af21f diff: https://github.com/bitrig/bitrig/commit/63b650a author: reyk <[email protected]> date: Mon Dec 7 13:30:06 2015 +0000 Most common strings in vm.conf are pathnames, so allow unquoted slashes in strings. Slashes were excluded because the parser came from pfctl and bgpd were IP prefixes are parsed this way but we can handle such cases differently if vmd ever has to parse IPs with prefix length. This change also allows to concatenate pathnames with macros. M usr.sbin/vmd/parse.y M usr.sbin/vmd/vm.conf.5 commit b3a60e78cf7be8bb124e1cc8e66bb50001ef286c diff: https://github.com/bitrig/bitrig/commit/b3a60e7 author: reyk <[email protected]> date: Mon Dec 7 12:52:00 2015 +0000 tweak initial error logging M usr.sbin/vmd/parse.y M usr.sbin/vmd/vmd.c commit da4dcaf1623b5eec34515bb597ceb17a86073ee8 diff: https://github.com/bitrig/bitrig/commit/da4dcaf author: reyk <[email protected]> date: Mon Dec 7 12:10:02 2015 +0000 Skip the "fatal in" message prefix when aborting with fatal() - when the daemon died with a message, it is obvious that a fatal condition happened. More important is a useful, but short, message that provides enough information to fix the problem. OK benno@ deraadt@ M usr.sbin/vmd/log.c commit 3de3aa5adda350fd6a6b50638a81dcd11837702f diff: https://github.com/bitrig/bitrig/commit/3de3aa5 author: reyk <[email protected]> date: Sun Dec 6 21:02:51 2015 +0000 Prevent running a VM with the same name multiple times - multiple instances of the same configuration will be handled in a different way later. It is also not a good idea to use the same writeable disk with multiple VMs at the same time. As discussed with mlarkin@ M usr.sbin/vmd/config.c M usr.sbin/vmd/parse.y M usr.sbin/vmd/vmd.c M usr.sbin/vmd/vmd.h commit 1540652ef615bff4a8a92ccbfb1cb41a47e6de4f diff: https://github.com/bitrig/bitrig/commit/1540652 author: mlarkin <[email protected]> date: Sun Dec 6 19:37:15 2015 +0000 remove some now-unused enums ok reyk@ M usr.sbin/vmd/vmd.h commit 1f83982f6598942f135660026c96471302f43f85 diff: https://github.com/bitrig/bitrig/commit/1f83982 author: mlarkin <[email protected]> date: Sun Dec 6 17:42:15 2015 +0000 un-needed extern which was removed a while back M usr.sbin/vmd/loadfile_elf.c commit 35a39423d31773a61a806134f7c5fa32c26e6389 diff: https://github.com/bitrig/bitrig/commit/35a3942 author: reyk <[email protected]> date: Sun Dec 6 10:30:41 2015 +0000 spacing M usr.sbin/vmd/vmd.h commit ab219aacdb629aa9d11555397d086aa7cb623b63 diff: https://github.com/bitrig/bitrig/commit/ab219aa author: reyk <[email protected]> date: Sun Dec 6 02:26:14 2015 +0000 Print the TTY in the vmctl status output. M usr.sbin/vmctl/vmctl.c M usr.sbin/vmctl/vmctl.h M usr.sbin/vmd/vmd.c M usr.sbin/vmd/vmd.h M usr.sbin/vmd/vmm.c commit 295f1ad77c77d26880af5af9ababb478a706c229 diff: https://github.com/bitrig/bitrig/commit/295f1ad author: reyk <[email protected]> date: Sun Dec 6 01:58:21 2015 +0000 When a new vm is created with VMM_IOC_CREATE, the kernel assigns a unique id to it. This happens in the vm child process and has to be communicated to the parent processes to track the vm. Knowing the vm id in the parent and vmm processes also allows to remove vm from the daemons list on terminate requests later. M usr.sbin/vmctl/vmctl.c M usr.sbin/vmd/vmd.c M usr.sbin/vmd/vmd.h M usr.sbin/vmd/vmm.c commit f395bb1f5c8740962d193dc572caeecdceee88e1 diff: https://github.com/bitrig/bitrig/commit/f395bb1 author: reyk <[email protected]> date: Sun Dec 6 01:16:22 2015 +0000 Check errno from config_getvm() correctly M usr.sbin/vmd/parse.y M usr.sbin/vmd/vmd.c commit 7c4bac5b63c72ad9359fab26bf2200f2a0aebd02 diff: https://github.com/bitrig/bitrig/commit/7c4bac5 author: reyk <[email protected]> date: Sun Dec 6 01:14:08 2015 +0000 Report errno from config_getvm() correctly M usr.sbin/vmd/config.c commit 9e51684ea3761e402ccc50faac7bd8508a9b3bbc diff: https://github.com/bitrig/bitrig/commit/9e51684 author: reyk <[email protected]> date: Sun Dec 6 00:32:57 2015 +0000 Terminate all running VMs on startup: we're not able to pick up state of "zombie" VMs yet, they are not useful without the device layer, so terminate them on vmd startup. As discussed with mlarkin@ M usr.sbin/vmd/vmm.c commit dfad07e5d950e0a64f0a1f61b18e23f73142cb91 diff: https://github.com/bitrig/bitrig/commit/dfad07e author: reyk <[email protected]> date: Sat Dec 5 20:33:51 2015 +0000 Print shorter error message if opening /dev/vmm failed. Pointed out by deraadt@ M usr.sbin/vmd/vmd.c
