Commit Graph

94 Commits

Author SHA1 Message Date
41d6d10373 Refactor to use rust-vmm crates for kvm operations 2023-01-31 13:47:55 -05:00
99020a5ad4 Updated Cargo.lock files 2023-01-27 16:40:13 -05:00
cdf41349fc Updated with correct sommelier command arguments 2023-01-27 16:39:26 -05:00
f938e1a785 Updated to correctly build kernel and sommelier 2023-01-27 16:38:08 -05:00
3a05847f31 Find sommelier binary in the sommelier build directory 2023-01-27 16:37:08 -05:00
9b75e697d6 Only respond to DMABUF commands if dmabuf is enabled in config 2023-01-27 16:36:27 -05:00
ffa6075c80 VIRTIO_ID_WL changed to match ID value in kernel driver. 2023-01-27 16:34:34 -05:00
616c0d4fa7 Use Vec instead of array to avoid 'stack overflow'
On debug build the worker thread stack overflows upon
thread launch with default stack size even though the
closure is only 130K. I don't know why this happens
but moving the buffers to the heap solves the problem.
2023-01-27 16:29:43 -05:00
9ee21a0309 Return 'GenuineIntel' as vendor string 2023-01-26 15:51:47 -05:00
ced3f6a4a8 Fix compiler warnings 2023-01-26 15:49:12 -05:00
45bfd42fec Update sommelier to dbd90c6b002f7d0867cc0b0f1538cc979b688d13 2023-01-26 15:40:13 -05:00
65052aac7a Update kernel to 6.1.8 2023-01-26 15:25:28 -05:00
7f3b3aa409 Large refactor.
Many many changes. The major themes of the refactor were to move the
x86 specific code into a separate 'arch' package and make the main
initialization and run loop much simpler to understand. The second big
change was to improve how errors are handled by making them more 'local'
so that packages define their own errors most of the time.
2019-10-02 16:41:02 -04:00
d24c5d9ea6 Fixed incorrect copy size reading/writing virtqueue descriptors 2019-10-02 15:41:52 -04:00
2a442775dd virtio_net 2019-09-26 22:52:33 -04:00
23f5903e1f set up color scheme on console shell 2019-09-26 22:49:01 -04:00
2b69ce2c08 return errors from system module 2019-09-26 22:40:54 -04:00
df4ab4c0c9 not used anymore 2019-09-26 22:31:14 -04:00
9f2acb07f8 Use correct home for realm 2019-09-24 17:05:29 -04:00
df1c6a3cb3 1) Work correctly if HOME is not /home/user. 2) Support read-write rootfs correctly. 2019-09-23 15:22:47 -04:00
6c25ccb226 systemd is not an option anymore 2019-09-23 15:20:57 -04:00
0a06043e32 support dmabuf in virtio_wl 2019-09-23 15:20:28 -04:00
3e5b802487 The in/out buffers have the wrong sizes, swap them 2019-09-23 15:10:57 -04:00
4632b9b5f4 XWayland works now 2019-09-22 00:51:24 -04:00
078a1a547b remove canonicalization since it doesn't work. 2019-09-22 00:50:32 -04:00
2dec4334f4 reorganized build script a bit 2019-09-21 20:46:02 -04:00
dc2a7f7a1f Implemented locking commands and fixed a couple other small problems 2019-09-21 20:45:15 -04:00
ffe02a3fc2 big refactor of ph-init to manage children/services correctly 2019-09-21 20:44:27 -04:00
c5bd65ac05 merge in updates from upstream 2019-09-21 20:43:03 -04:00
ff228d477e paths that don't exist yet need to use canonicalize_parent()
or else they will fail with ENOENT
2019-09-21 01:07:14 -04:00
a1c1b13a47 flex and bison are also needed to build kernel 2019-09-20 23:06:51 -04:00
e8af16a2bc launch sommelier as a daemon, also start dbus session 2019-09-20 23:06:28 -04:00
9762f1105c a few more notes on building 2019-09-20 19:54:15 -04:00
5ff4b85808 make output from kernel download nicer when building with -vv 2019-09-20 19:53:43 -04:00
e3e774c3a3 ignore some things 2019-09-20 19:53:15 -04:00
1dcad9f1f4 add sommelier 2019-09-20 18:57:28 -04:00
d962bb4d46 typo 2019-09-20 18:53:41 -04:00
54deaf1782 add a readme 2019-09-20 18:51:59 -04:00
8587532a5e update libcitadel git revision 2019-09-20 18:51:38 -04:00
c63ede2482 remove old code 2019-09-20 18:51:18 -04:00
d6b9667740 Build everything with cargo 2019-09-20 18:15:10 -04:00
3b168d5db5 move ph-init to separate crate 2019-09-20 17:57:35 -04:00
e69cb5ba1a new and improved kernel build 2019-09-20 17:55:12 -04:00
0f50387d1e change source layout 2019-09-20 17:29:55 -04:00
5a1c62d473 extensive changes to how VMs are configured and launched 2019-09-20 16:26:28 -04:00
2568a30440 libcitadel is now a dependency 2019-09-20 16:25:47 -04:00
4fc4c05155 ph-init mostly rewritten
Is more complex now and reads various kernel command line options to
configure behavior.

  * optionally set up tmpfs overlay over read-only rootfs
  * find and mount rootfs
  * mount /proc /sys /tmp /dev
  * mount 9p home directory
  * launch shell as root or as user
2019-09-20 16:10:30 -04:00
f71e3adb79 When printing warnings, label the warnings as coming from virtio_wl 2019-09-20 16:04:35 -04:00
626b6583db Update bytes written when manually incrementing offset of virtio chain 2019-09-20 16:03:36 -04:00
98a1e9361e Rewrite of 9p filesystem
Old version barely worked, but the new version works very well.

Supports two backend types. Exporting a tree from the host filesystem
is supported of course, and this is one backend. The second backend
is a synthetic filesystem on which directories can be created and then
files can be added to the directories. The files added to the filesystem
are either backed by a file on the host filesystem or a buffer of bytes
in memory.
2019-09-20 16:01:15 -04:00