1 Things to be addressed, at some point. Unsorted, unprioritized, incomplete.
4 - AMD IOMMU support [WIP]
7 - allow per cell (managing inter-core/inter-cell impacts)
8 - NMI control/status port - moderation or emulation required?
9 - whitelist-based MSR access
10 - add support for Intel Cache Allocation Technology (cache quality
16 - improve support for platform variations (device tree?)
18 - support for big endian
19 - infrastructure to support BE architectures (byte-swapping services)
20 - usage of that infrastructure in generic subsystems
21 - specific BE support for ARMv7, then v8
24 - review of format, rework of textual representation
25 - platform device assignment
26 - enhance config generator
27 - confine the created root cell config to the essentially required
28 resources (e.g. PCI BARs)
29 - generate non-root cell configs
30 - add knowledge base about resource access rules that need manual review or
31 configurations that are known to be problematic (e.g. INTx sharing
35 - check integrity of configurations
36 - check integrity of runtime environment (hypervisor core & page_pool,
37 probably just excluding volatile Linux-related state variables)
38 - pure software solution (without security requirements)
39 - Intel TXT support? [WIP: master thesis]
41 - check for execution inside hypervisor, allow only when enabled in config
42 - clear memory regions before reassignment to prevent information leaks?
44 Inter-cell communication channel
45 - analysis of virtio reuse
46 - analysis of ARINC 653 semantics
47 - high-level mechanisms (specifically queues) based on selected/modified
49 - Linux for consoles and message-based interfaces (if not reusable)
53 - system tests, also in QEMU/KVM
54 - VT-d emulation for QEMU [WIP: interrupt redirection]
57 - reusable runtime environment for cell inmates
58 - skeleton in separate directory
60 - x86: add TSC calibration
61 - inter-cell communication library
62 - port free small-footprint RTOS to Jailhouse bare-metal environment
65 Hardware error handling
73 - report error-triggering devices behind IOMMUs via sysfs
74 - hypervisor console via debugfs?
75 - cell software watchdog via comm region messages
76 -> time out pending comm region messages and kill failing cells
77 (includes timeouts of unanswered shutdown requests)
80 - generic sub-page access filtering
81 - use bitmap, likely with byte granularity, to filter access on specific
82 registers in a MMIO page
83 - generic and faster MMIO dispatching
84 - use binary search on an per-cell array of (start, size, handler, opaque)
86 - should be able to deal with both existing devices as well as sub-page