Difference between revisions of "Fedora ARM Secondary Architecture/Research Plan/Summer 2010"

From CDOT Wiki
Jump to: navigation, search
(Package Set Maintenance)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Chris Tyler Draft}}
+
[[Category:Fedora ARM Secondary Architecture]][[Category:CDOT Research Plans]]
<!-- [[Category:Fedora ARM Secondary Architecture]] -->
 
  
 
= Goals =
 
= Goals =
Line 88: Line 87:
  
 
== May 14 ==
 
== May 14 ==
 +
 +
* Demos ready for OCE Discovery
  
 
* Koji Farm
 
* Koji Farm
 
** Final farm configuration researched and selected
 
** Final farm configuration researched and selected
** Note: Hardware will have been ordered and will be arriving
+
** Note: Hardware will have been ordered and will start arriving
 +
 
 +
* Become a Fedora packager (minimum: start process)
  
 
== May 28 ==
 
== May 28 ==
  
* Koji Farm
+
* Become a Fedora packager, get Fedora ARM status in FAS2
** Installed and running
 
 
* Koji Shadow
 
* Koji Shadow
 
** Installed and running
 
** Installed and running
 
== June 11 ==
 
 
* Package Set Maintenance
 
** Start submitting bugs against packages that won't build on ARM (ongoing) and/or use Secondary Arch procedures to directly commit spec changes
 
  
 
* Bugzilla
 
* Bugzilla
 
** Request changes in platform tags for ARM
 
** Request changes in platform tags for ARM
 
** Start tracking platform-specific bugs
 
** Start tracking platform-specific bugs
 +
 +
== June 11 ==
 +
 +
* Koji Farm
 +
** Hardware installed and running
  
 
* Compose
 
* Compose
Line 114: Line 116:
 
== June 25 ==
 
== June 25 ==
  
* Package Set Maintenance (ongoing)
+
* Package Set Maintenance
 +
** Start submitting bugs against packages that won't build on ARM (ongoing) and/or use Secondary Arch procedures to directly commit spec changes
  
 
* Testing
 
* Testing
** Initial testing reports on one ARM platform using new rootfs
+
** Initial testing reports on one ARM platform (e.g. GuruPlug) using new rootfs
  
 
== July 9 ==
 
== July 9 ==
Line 124: Line 127:
  
 
* Testing
 
* Testing
** Initial testing reports on two additional ARM platforms
+
** Initial testing reports on two additional ARM platforms (e.g., Hawkboard, Beagleboard)

Latest revision as of 16:45, 6 May 2010


Goals

In collaboration with the Fedora project and other open source projects:

  1. To build the Fedora Linux distribution for computers based on the ARM processor.
  2. To keep current with the software builds taking place on the Fedora primary architectures.
  3. To provide input into the Fedora packaging process and to the design of specific packages with respect to building on ARM.
  4. To develop tools for using Fedora on ARM devices (e.g., compose and loading tools).
  5. To advance the state of the art of software on low-power devices.
  6. To support new ARM devices well, with specific emphasis on the upcoming OLPC XO 1.75.

Specific Objectives

This list includes objectives that will be completed this summer, and objectives that will be started this summer and continue.

Fedora ARM Koji Farm

  • Evaluate and select hardware options for a Koji farm for the Fedora ARM Secondary Architecture, building on the work done by SBR600 in Winter 2010
  • Set up the Koji build farm in collaboration with the Fedora ARM community
  • Switch to Fedora certificates

Factors to Consider

  • Network layout
    • Koji-Hub, Koji-Server, and resulting software repository must be accessible both inside and outside Seneca
    • ARM builders must be able to communicate with the Koji-Hub
    • ARM builders must be able to communicate with shared file storage
    • ARM builders must have local storage or a SAN (e.g., iSCSI) or shared, high-performance file storage

Current Candidate Configuration

  • 15-25 GuruPlug Servers
  • iSCSI SAN for storage
  • Quad-core PC to run Koji-Hub, Koji-Web, and master repository
  • May eventually need second machine with different connectivity for Koji Hub/Koji Web

Koji-Shadow

  • Configure Koji-Shadow so that packages built for the Fedora primary architectures are also built for Fedora ARM
  • Sync up with F13 and Rawhide builds

Package Set Maintenance

  • Become a Fedora packager
  • Become a member of the Fedora-ARM FAS2 group (for CVS access to packages for arch purposes)
  • Update packages as necessary with ExcludeArch tags where those packages are not suitable or cannot be built on ARM architecture

Bugzilla

  • Get the bugzilla admins to rationalize the ARM processor options in the platform list (right now there are a number of ARM options, none of which accurately reflect the ARM build: arm7, arm9, xscale, strongarm).
  • Actively monitor bugzilla for platform-related problems

Testing

  • Acquire a number of ARM hardware devices and test the ARM build on those devices:
    • SheevaPlug
    • OpenRD-Client
    • GuruPlug
    • Beagleboard
    • Hawkboard
    • TouchBook
    • OLPC XO 1.75

Optimization

  • Optimize the Fedora ARM Build
    1. Identify optimization opportunities
    2. Create and test optimized builds
    3. Make decisions on which optimizations should be default
    4. Create additional subarchs are appropriate (e.g., armv5, armv7 or with/without FPU)

Compose

  • Create root filesystems
  • Write tools to load popular products (e.g., tool that would be run on a PC to connect to a SheevaPlug and load NAND)
  • Write a tool to compose a custom root filesystem formatted for a specific device (e.g., SD card image, tftp file set)

Kernel

  • Investigate creating a single kernel or a small set of kernels that would work on a variety of devices, rather than a custom kernel-per-device
  • Use initrd (dracut) and modules to handle the differences between devices

Summer 2010 Timeline

This timeline sets out 2-week goals for the first half of the summer work period.

May 14

  • Demos ready for OCE Discovery
  • Koji Farm
    • Final farm configuration researched and selected
    • Note: Hardware will have been ordered and will start arriving
  • Become a Fedora packager (minimum: start process)

May 28

  • Become a Fedora packager, get Fedora ARM status in FAS2
  • Koji Shadow
    • Installed and running
  • Bugzilla
    • Request changes in platform tags for ARM
    • Start tracking platform-specific bugs

June 11

  • Koji Farm
    • Hardware installed and running
  • Compose
    • Initial rootfs compose

June 25

  • Package Set Maintenance
    • Start submitting bugs against packages that won't build on ARM (ongoing) and/or use Secondary Arch procedures to directly commit spec changes
  • Testing
    • Initial testing reports on one ARM platform (e.g. GuruPlug) using new rootfs

July 9

  • Package Set Maintenance (ongoing)
  • Testing
    • Initial testing reports on two additional ARM platforms (e.g., Hawkboard, Beagleboard)