]> rtime.felk.cvut.cz Git - jailhouse.git/commitdiff
Convert to TODO.md
authorJan Kiszka <jan.kiszka@siemens.com>
Sun, 11 Jan 2015 16:09:27 +0000 (17:09 +0100)
committerJan Kiszka <jan.kiszka@siemens.com>
Sun, 11 Jan 2015 16:11:48 +0000 (17:11 +0100)
Make this file markdown-friendly as well.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
TODO [deleted file]
TODO.md [new file with mode: 0644]

diff --git a/TODO b/TODO
deleted file mode 100644 (file)
index 99cff74..0000000
--- a/TODO
+++ /dev/null
@@ -1,66 +0,0 @@
-Things to be addressed, at some point. Unsorted, unprioritized, incomplete.
-
-o x86 support
- - AMD IOMMU support [WIP]
- - power management
-  - block
-  - allow per cell (managing inter-core/inter-cell impacts)
- - NMI control/status port - moderation or emulation required?
-o ARM support
- - v7 (32-bit) [WIP]
-  - System MMU support
-  - improve support for platform variations (device tree?)
- - v8 (64-bit)
- - support for big endian
-  - infrastructure to support BE architectures (byte-swapping services)
-  - usage of that infrastructure in generic subsystems
-  - specific BE support for ARMv7, then v8
-o configuration
- - review of format, rework of textual representation
- - platform device assignment
- - enhance config generator
-  - confine the created root cell config to the essentially required resources
-    (e.g. PCI BARs)
-  - generate non-root cell configs
-  - add knowledge base about resource access rules that need manual review or
-    configurations that are known to be problematic (e.g. INTx sharing between
-    cells)
-o setup validation
- - check integrity of configurations
- - check integrity of runtime environment (hypervisor core & page_pool,
-   probably just excluding volatile Linux-related state variables)
-  - pure software solution (without security requirements)
-  - Intel TXT support? [WIP: master thesis]
-  - secure boot?
- - check for execution inside hypervisor, allow only when enabled in config
- - clear memory regions before reassignment to prevent information leaks?
-o inter-cell communication channel
- - analysis of virtio reuse
- - analysis of ARINC 653 semantics
- - high-level mechanisms (specifically queues) based on selected/modified
-   standard
- - Linux for consoles and message-based interfaces (if not reusable)
-o testing
- - unit tests?
- - system tests, also in QEMU/KVM
-  - VT-d emulation for QEMU [WIP: interrupt redirection]
-o inmates
- - reusable runtime environment for cell inmates
-  - skeleton in separate directory
-  - hw access libraries
-   - x86: add TSC calibration
-  - inter-cell communication library
- - port free small-footprint RTOS to Jailhouse bare-metal environment
-   [WIP: RTEMS]
-o hardware error handling
- - MCEs
- - PCI AER
- - APEI
- - Thermal
- - ...
-o monitoring
- - report error-triggering devices behind IOMMUs via sysfs
- - hypervisor console via debugfs?
- - cell software watchdog via comm region messages
-  -> time out pending comm region messages and kill failing cells
-     (includes timeouts of unanswered shutdown requests)
diff --git a/TODO.md b/TODO.md
new file mode 100644 (file)
index 0000000..acf00be
--- /dev/null
+++ b/TODO.md
@@ -0,0 +1,74 @@
+Things to be addressed, at some point. Unsorted, unprioritized, incomplete.
+
+x86 support
+  - AMD IOMMU support [WIP]
+  - power management
+    - block
+    - allow per cell (managing inter-core/inter-cell impacts)
+  - NMI control/status port - moderation or emulation required?
+
+ARM support
+  - v7 (32-bit) [WIP]
+    - System MMU support
+    - improve support for platform variations (device tree?)
+  - v8 (64-bit)
+  - support for big endian
+    - infrastructure to support BE architectures (byte-swapping services)
+    - usage of that infrastructure in generic subsystems
+    - specific BE support for ARMv7, then v8
+
+Configuration
+ - review of format, rework of textual representation
+ - platform device assignment
+ - enhance config generator
+    - confine the created root cell config to the essentially required
+      resources (e.g. PCI BARs)
+    - generate non-root cell configs
+    - add knowledge base about resource access rules that need manual review or
+      configurations that are known to be problematic (e.g. INTx sharing
+      between cells)
+
+Setup validation
+  - check integrity of configurations
+  - check integrity of runtime environment (hypervisor core & page_pool,
+    probably just excluding volatile Linux-related state variables)
+    - pure software solution (without security requirements)
+    - Intel TXT support? [WIP: master thesis]
+    - secure boot?
+  - check for execution inside hypervisor, allow only when enabled in config
+  - clear memory regions before reassignment to prevent information leaks?
+
+Inter-cell communication channel
+  - analysis of virtio reuse
+  - analysis of ARINC 653 semantics
+  - high-level mechanisms (specifically queues) based on selected/modified
+    standard
+  - Linux for consoles and message-based interfaces (if not reusable)
+
+Testing
+  - unit tests?
+  - system tests, also in QEMU/KVM
+    - VT-d emulation for QEMU [WIP: interrupt redirection]
+
+Inmates
+  - reusable runtime environment for cell inmates
+    - skeleton in separate directory
+    - hw access libraries
+      - x86: add TSC calibration
+    - inter-cell communication library
+  - port free small-footprint RTOS to Jailhouse bare-metal environment
+    [WIP: RTEMS]
+
+Hardware error handling
+  - MCEs
+  - PCI AER
+  - APEI
+  - Thermal
+  - ...
+
+Monitoring
+  - report error-triggering devices behind IOMMUs via sysfs
+  - hypervisor console via debugfs?
+  - cell software watchdog via comm region messages  
+    -> time out pending comm region messages and kill failing cells
+       (includes timeouts of unanswered shutdown requests)