Commit graph

314 commits

Author SHA1 Message Date
Hannes Mehnert 4ce52daea8 gather more statistics from kinfo_user (sys/user.h) on FreeBSD
- real time runtime information (in microsecs) ki_runtime
- start timeval ki_start
- count of copy-on-write fauls ki_cow
2019-10-12 02:04:44 +02:00
Hannes Mehnert 50ed6a8d1e adapt to X509 0.7.0 API, minor comment and doc tweaks 2019-07-27 14:01:12 +02:00
Hannes Mehnert 92c325a7f9 freebsd-packaging: make albatrossd group-executable 2019-07-27 12:46:20 +02:00
Hannes Mehnert 28959a66bf
Merge pull request #22 from yomimono/master
update to ipaddr 4.0.0 & decompress 0.9.0
2019-07-27 12:46:01 +02:00
Mindy bf59b7b930 update to ipaddr 4.0.0 & decompress 0.9.0 2019-07-16 15:11:41 -05:00
Hannes Mehnert 95a46638fa use cmdliner.1.0.0, especially term_result
move albatross_cli to a custom directory (command-line)
2019-04-08 16:41:20 +02:00
Hannes Mehnert 45f37389aa move to dune, rename executables 2019-03-28 00:11:43 +01:00
Hannes Mehnert dce477a01e vmmc_bistro: validity starts at now - 10 2019-03-02 21:29:51 +01:00
Hannes Mehnert 752536c38f vmm_stats_pure: info -> debug 2019-01-27 22:33:15 +01:00
Hannes Mehnert 4b4d1208db vmmd_stats: remove ifname, use bridge (overwrite bridge in gather) 2019-01-27 22:31:04 +01:00
Hannes Mehnert 55d7fd38ac vmm_ring: unused variable 2019-01-27 22:22:57 +01:00
Hannes Mehnert be783a6803 README: updates, remove outdated instructions 2019-01-27 19:15:38 +01:00
Hannes Mehnert a9c32d7801 vmmd: actually, first check resources, then exec VM, then insert VM
in case the insertion fails, raise Invalid_argument

this leads to more sane failure behaviour, and also cleans up resources in case
 vmm_resources.insert_vm fails (or cpuset/open of the fifo, create_process)
2019-01-27 17:20:24 +01:00
Hannes Mehnert 131dec0cdd debug 2019-01-27 16:11:40 +01:00
Hannes Mehnert 16f06216ba vmmd: fine grained output handling, gracefully handle Failure from console 2019-01-27 16:07:53 +01:00
Hannes Mehnert e362722da5 vmmd: use mutex for write and read on client sockets, no need for a mvar 2019-01-27 14:13:29 +01:00
Hannes Mehnert 84e7dee81b vmmd_console: further refactoring 2019-01-27 13:10:09 +01:00
Hannes Mehnert eb146351e0 vmm_ring: fix create (array size was hardcoded to 1024, independent of optional size argument) 2019-01-27 13:02:10 +01:00
Hannes Mehnert d9f76312ed vmmd_console: reuse ring if already present in map - this preserves console output between re-creations 2019-01-27 12:55:23 +01:00
Hannes Mehnert 943ea45e25 vmm_vmmd, vmm_unix: compute device name (/dev/vmm/solo5-PID) in vmm_unix (depending on host OS); also destroy this device on shutdown (used to be done by solo5-hvt, but that now drops privileges and is no longer able to do this) 2019-01-20 23:02:01 +01:00
Hannes Mehnert c372c8405e vmmd: dump state (unikernel configurations) on create+destroy, restore from state on startup 2019-01-20 22:17:59 +01:00
Hannes Mehnert 1a288d2937 vmm_vmmd: pass success reply to handle_create fully applied 2019-01-20 22:09:33 +01:00
Hannes Mehnert 4d3bb777e1 vmm_vmmd: introduce and use type 'a create 2019-01-20 22:09:33 +01:00
Hannes Mehnert e58ab236b7 vmmd: lock self_destruct with a mutex, respect result of killall (nothing killed, nothing to do) 2019-01-20 22:09:33 +01:00
Hannes Mehnert d84013103c vmmd: revise process, write_reply, and out signatures, move process to jump 2019-01-20 22:09:33 +01:00
Hannes Mehnert d4e31da27f vmmd: setup and teardown stat by create continuation, and vmm_vmmd.handle_shutdown 2019-01-20 22:09:33 +01:00
Hannes Mehnert fdcea94a0b vmmd: store waiter, not tasks in Vmm_vmmd.t -- create task and waiter on demand (destroy / create --force), instead of at each unikernel creation 2019-01-20 22:09:33 +01:00
Hannes Mehnert fc63a89429 Vmm_unix: use Sys.sigterm (and rely on caml_convert_signal_number to be cross-platform) 2019-01-20 20:37:30 +01:00
Hannes Mehnert dfd22be62b Vmm_unix: don't reset image of a config 2019-01-20 20:35:55 +01:00
Hannes Mehnert accb21b8b7 Vmm_unix.exec: rename vm to config 2019-01-20 20:35:26 +01:00
Hannes Mehnert 25ca62bf69 Vmmd_tls_inetd: remove unused open Vmm_cli 2019-01-20 20:32:16 +01:00
Hannes Mehnert d30e118c76 Vmm_core.Name: use 'vm:' instead of 'name' as literal string to print 2019-01-20 20:31:40 +01:00
Hannes Mehnert f64583c74c vmm_stats: don't attempt to open vmctx in add_pid, only in gather 2019-01-20 20:29:51 +01:00
Hannes Mehnert 15e1f5ecf6 vmm_unix: ensure lazy uname being called only once 2019-01-20 20:28:51 +01:00
Hannes Mehnert 7b8f8fafbd close fd early, no need to carry file descriptors around 2019-01-20 17:43:44 +01:00
Hannes Mehnert 094922f6b0 vmmd: teardown gracefully (kill all vms), install SIGTERM handler to teardown 2019-01-18 01:14:11 +01:00
Hannes Mehnert 2f1197aad1 vmm_stats: if sysctl rusage fails, remove vm from stats gathering 2019-01-15 00:39:59 +01:00
Hannes Mehnert 58bd77bc5f stats: pass bridge device through, vmm device name as well to allow arbitrary bhyve statistics, vmmc_local: add stats_add and stats_remove subcommands 2019-01-15 00:25:59 +01:00
Hannes Mehnert c0189178e5 fixes 2019-01-13 22:02:16 +01:00
Hannes Mehnert 623a449ea2 log at info if nobody is interested in stats 2019-01-06 03:52:37 +01:00
Hannes Mehnert cd01611efb vmmd_stat: use correct id to remove socket 2019-01-06 03:00:16 +01:00
Hannes Mehnert 21262dd891 require ipaddr with Ipaddr.V4.pp 2019-01-06 01:57:29 +01:00
Hannes Mehnert fd4a5a5e22 inspect kinfo_proc structure for information about:
- virtual size
- resident size (in pages)
- text size (in pages)
- data size (in pages)
- stack size (in pages)

develop independent vmmc_stat for testing (not installed)
2019-01-06 01:12:56 +01:00
Hannes Mehnert 030f5aa379 vmm_unix, create_block: first create file, and then truncate 2018-12-07 00:07:16 +01:00
Hannes Mehnert 325f6c3b22 vmmd_log: handle sighup properly (to support newsyslog / logrotate) 2018-12-06 22:56:19 +01:00
Hannes Mehnert bda342f136 re-support parsing of AV2 log entries, document path forward strategy 2018-12-06 22:55:13 +01:00
Hannes Mehnert e28ea84548 Log: new event `Hup 2018-12-06 22:53:15 +01:00
Hannes Mehnert 39bc40353c Vmmd_stats: use lwt_engine.on_timer for stats reporting instead of custom made let rec timer .. = sleep interval 2018-12-06 21:40:52 +01:00
Hannes Mehnert 6724c44700 [ci skip] update readme 2018-11-23 21:55:20 +01:00
Hannes Mehnert 0ced2ebad1 fix days in generate 2018-11-23 21:13:54 +01:00