Copyright 2014 by Assured Information Security, Inc. Created by Ross Philipson <philipsonr@ainfosec.com>. This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.

Tasks suitable for newcomers to OpenXT

Here are some JIRA tickets that should be approachable for newcomers to OpenXT who are looking to get some practical experience with development or documentation. Before getting started, if the ticket already has an Assignee, you should contact that person to see if the work is already under way.

Items listed below this point will be less suited to newcomers.

Task List - A Starting Point

This is a first cut of putting together a task list of things that need to get done or we would like to get done. Each top level item may has a sub-list of smaller tasks listed. Many of these items were on other people's lists too (others involved in the OpenXT project). I am not including effort/time estimates or trying to prioritize these items at this time. I started it here on this wiki so it can be discussed, modified, added to, etc. Eventually we would want to get these items into Jira (and the details of how to do that may need discussion also). I did not use a table because they are not very friendly when using the Github wikis. Please feel free to edit...

List

Update TBOOT

Our current TBOOT if quite old. It needs a serious upgrade to the latest. This would be an ongoing task as new TBOOT versions are released. Update schedules would have to be carefully planned.

Update Xen

We would like to track upstream as closely as possible and minimize our patch queue. This would be an ongoing task as new Xen versions are released. Update schedules would have to be carefully planned.

Update Dom0 Kernel

Again, we would like to track upstream as closely as possible and minimize our patch queue. This would be an ongoing task as new Kernel versions are released or new hardware support is needed. Update schedules would have to be carefully planned.

Open Embedded Enhancements

Moving to a new OE and using layers. TODO leaving mostly for others to fill in.

PV USB

This is a blanket item to cover all the PV USB work. Some of the specifics...

Dependencies: XenServer PV Windows Drivers

XenServer PV Windows Drivers

The current PV driver set is a very old version of the XenServer drivers. People on the XenServer and platform teams at Citrix did a huge amount of work to open source the latest XenServer drivers and it seems they are becoming the industry standard:https://github.com/xenserver

UEFI Support

There may come a time when we see vendors begin to not support CSMs in their UEFI firmware any longer. OpenXT needs to be prepared for that. This mainly means supporting UEFI booting through GRUB2 using multiboot2 structures. For OpenXT this means TBOOT, Xen and Dom0 must have these new multiboot2 capabilities. It also means supporting GPT partitioning.

Dependencies: Update TBOOT, Update Xen

Toolstack Core Changes

This seems like a very broad item but here it is specifically addressing the core pieces like xenmgr->xenvm->libxc.

Dependencies: Everything

Graphics Stack

This is the Display Handler project introducing a whole new graphics architecture.

Dependencies: Input Server Changes, PV USB, Superhid

Input Server Changes

The input server definitely needs a major overhaul and may need a complete redoing (to be seen).

Dependencies: Graphics Stack

Superhid

Superhid introduces a whole new way of creating virtual USB devices in guests, allowing guests to use native drivers and software to do all the standard HID business.

Dependencies: PV USB, Graphics Stack

Build Improvements

There are a number of things we can do better at...

Interdomain Communications

We have V4V currently. Do we push forward with it and fix it or consider another approach like one of the grant models. Note that V4V will never be upstreamed into Xen so this is a rather largish nail in the coffin.

Dependencies: XenServer PV Windows Drivers

Standardize RPC Communications

OpenXT currently has multiple RPC mechanisms and no real standards for interfaces and proxies etc.

Audio Improvements

Really kind of a general bucket for audio related tasks and issues.

BVT Automated Tests

The original BVT automated test framework was also pushed to open source under the openxt-extras organization. Good automated tests may be key to success of the overall project.

Sync XT Improvements

vTPM Integration

Adopting the vTPM work done in Xen and elsewhere in OpenXT.

Documentation

OpenXT needs a plan for documentation. Currently there are just a bunch of PDFs pushed out in the open source effort.

Done Stuff

Update TBOOT

Update Dom0 Kernel

Update QEMU

PV USB

OpenXT PV Linux Drivers