F20 System Wide Change: ARM as primary Architecture

Jaroslav Reznik jreznik at redhat.com
Tue Jul 9 13:00:05 UTC 2013

= Proposed System Wide Change: ARM as primary Architecture =

Change owner(s): Dennis Gilmore <dennis at ausil.us>, Peter Robinson 
<pbrobinson at gmail.com>

Make ARM a primary architecture. Add armv7hl to the i686 and x86_64 as arches 
that we build and support. This will mean that all packages supported by the 
ARM architecture must build for ARM to be released. With the release of Fedora 
19 we have deprecated support for software floating support (ARMv5tel sfp) so 
the only proposed addition to primary architectures is currently ARMv7 
hardware floating point 32 bit support (ARMv7 hfp 32bit).

== Detailed description ==
The Changing IT landscape has started to focus on greener technologies as well 
as cheaper mass produced devices that allow for fully functional cheap devices 
for lower socio-economic areas and other markets like education and "makers". 
ARM SoCs have traditionally been the domain of embedded and mobile 
applications but are now finding their way into more traditional computing 
devices like desktop, notebook and server markets. Fedora ARM currently works 
on many different devices with wider support coming with each new mainline 
kernel release.

For this change we will enable armv7hl builds on primary koji, and compose arm 
trees as with the other primary architectures. Fedora has in the Phoenix data 
centre 96 quad core Calxeda EnergyCore server nodes. Some of these nodes will 
remain allocated to the arm secondary architecture koji instance for building 
updates for the current Fedora 18 and 19 releases. When Fedora 18 goes end of 
life the ARMv5 softfp nodes will able to be be reallocated to other tasks. 
Infrastructure has expressed an interest in testing and experimenting with 
some of its workloads on ARM, some are allocated to QA and some for releng. 
There is currently 24 nodes configured in primary koji ready to go as builders, 
there is the capacity to add up to 24 more when ARM becomes primary if 

The kernel is now a multi platform unified ARMv7 kernel supporting a number of 
SoCs with support expanding with each new upstream release. We build a base 
and LPAE variant similar to i686. There is an ARM specific (ARMv7 and aarch64) 
kernel maintainer working in collaboration with the Fedora kernel team. The 
releases are composed using the exact same tooling as used for the primary 
architectures. Disk images for development boards are generated by appliance-
creator and the kickstarts live in spin-kickstarts, they take a similar format 
as the livecds on primary but are shipped as an OEM disk image, and like 
primary initial-setup is used to do final user configuration. Like primary pungi 
is used to generate an install tree, PXE install trees are created but current 
bootloaders don't support isofs so ISO images aren't currently created. 

== Scope ==
Add armv7hl to list of arches for f20-build and future build tags in koji 
compose armhfp trees with i386 and x86_64. Requisite build hardware already 
exists in phx2 and is configured to work with mainline koji.

Proposal owners: change the arches in koji, import the matching ARMv7 rawhide 
builds into koji. Update Release Engineering scripts to automatically build 
armhfp trees along with i686 and x86_64.

Other developers: submit builds as normal, in the event of unexpected build 
failures liaise with the ARM Team to help debug and fix issues.

Release engineering: Will need to add armhfp to the release processes and make 
arm install trees and disk images with each milestone compose. Release 
Engineering are part of the team of people proposing the Change.

Policies and guidelines: armv7hl builds will be required to complete for 
builds to be successful in koji 
devel-announce mailing list
devel-announce at lists.fedoraproject.org

More information about the devel mailing list