[Sugar-devel] ANNOUNCE: Sugar 0.88 for the XO-1

Daniel Drake dsd at laptop.org
Wed May 26 11:00:39 EDT 2010


On 25 May 2010 18:12, Peter Robinson <pbrobinson at gmail.com> wrote:
> That's not entirely true. The was no changes in CPU support from F-12
> to F-13. What has happened was a change in gcc which causes issues
> with F-13 on geode processors. There's a bit missing from gcc for
> geode support that would need to be added. dsd and cjb know more of
> the details.

Interesting, I hadn't realised that.
The change from i586 to i686 happened for F12, not F13 as I had thought.
So in fact, it is likely that F12 will not work on XO-1, but it might
only affect a handful of packages.

The problem is that the Geode is an i586, not an i686. It does support
the majority of the new i686 instructions, but not all. So it's not
quite an i686.

The reason that the problem is more evident on F13 will be due to
improvements in the compiler (gcc), which is now better at producing
optimized code using the new optimized i686 instructions, including
the ones that are not supported on geode.

One option is to persuade Fedora that OLPC/Geode matters and ask them
to go back to i586. The other is to implement an instruction emulator
in the kernel, which will emulate in software the i686 instructions
that are not supported on geode. This will introduce a slowdown, but
because the instruction in question (nopl) is simple, the kernel can
emulate all instances of it at the same time (within the current code
section) once the first instance is met.

As has been pointed out, there is some kernel code floating around
that is working in this direction. However, it's not totally correct
and the kernel developers want a more generic system rather than
something Geode-specific. And there are efforts going in this
direction, but there have been for 1-2 years now, it is slow moving.
We need someone like Bernie to pick up the project, hint hint ;)

Daniel



More information about the Devel mailing list