[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bits from the armel porters

Hash: SHA1

Hello dear developers,

As you may have noticed, a new architecture, armel, has been added to
Debian. Here are some highlights and a bit of information in a nutshell.
For more details, refer to the wiki pages[0].

Advantages over arm port

The main difference is in floating point operations. As most ARM CPUs
do not have FPUs, armel is by default softfloat. The old arm port has
peculiar mixed-endian double presentation and it emulates a FPU using
kernel exceptions, which is *painfully* slow.

Armel supports many modern ARM instruction sets that were not possible
with the old port, such as thumb, VFP and NEON. And very important for
the port in general, armel is well supported upstream, while the old
abi risks bitrotting.


In early 2006 it was concluded that the old arm port was having a severe
performance penalty, especially with floating point. Conveniently,
at the same time ARM had released and implemented a new abi called EABI.
Some bike shedding later, the name for the new port was chosen to be
armel[1]. After a year of little visible progress, things got
moving when Lennert Buytenhek, sponsored by Applied Data Systems,
bootstrapped and published his port[2]. Aurelian Jarno, Guillem Jover
and yours truly set up buildds at gnuab.org (later to become
debian-ports.org) to rebuild all packages from clean,
unpatched Debian source packages. The port matured slowly but surely
towards the end of 2007. After the inevitable communication hicups,
last month armel was added to the normal Debian infrastructure.


Armel has built 90% of the archive, and will get more built once
more buildds get installed. The biggest things needing porting work for
armel are Objective-C / gnustep and mono.

Any end users still using debian-ports.org should change their
/etc/apt/sources.list to point to their nearest official Debian mirror
carrying armel[3].

Joey Hess builds daily armel Debian Installer images[4] for Linksys NSLU-2,
Intel IOP (Thecus N2100, IO-Data GLAN Tank), and we have ARM Versatile
kernels for using armel in qemu.

ARM is following the progress of the debian/armel port and sponsors
parts of the development.


In order to get armel released in Lenny, armel needs to be part
of testing. Currently armel packages get added to testing, but
testing does not care if armel packages in testing are uninstallable,
nor does testing wait for armel packages to get built.

For the first point to change, the uninstallable
count needs to drop significantly. Currently there are 4500
uninstallable armel packages in testing, mostly due to stalled
xorg-server 1.4 migration.

For the second point, armel must keep up-to-date and must not have
build failures affecting armel. The current buildds are struggling to
keep upto date, so 4 new Thecus machines have now been ordered to be set
up as normal/testing/security buildds and porter machines in the near

Other things being worked on are adding more hardware support,
such as Marvell Orion based NAS Devices (Linkstation, Kuro BOX pro,
D-LINK DNS-323), which Martin Michlmayr is working on. We are
proposing a Google Summer of code project[4] on this subject.
Also we are working on getting more packages (such as
Openoffice.org) compiled and added to armel port.


The overwhelming support we have had from the community has been
amazing! I was pessimistic and expected grumpy maintainers actively
refusing patches adding support for an "unofficial" architecture and
MIA maintainers coming back to life only to flame about someone
daring to NMU their packages.

	Not once did either of those happen!

The list of people we'd like to thank is simply too long to
list here..

[0] http://wiki.debian.org/ArmEabiPort
[1] http://lists.debian.org/debian-arm/2006/04/msg00019.html
[2] http://lists.debian.org/debian-arm/2007/01/msg00034.html
[3] http://www.debian.org/mirror/mirrors_full
[4] http://wiki.debian.org/ArmEabiHowto
[5] http://wiki.debian.org/SummerOfCode2008/DebianNAS

- -- 
"rm -rf" only sounds scary if you don't have backups
Version: GnuPG v1.4.6 (GNU/Linux)


Reply to: