Ubuntu 8.10 Alpha-3 Intrepid Ibex - Via C3 CPU not Supported

Bug #254453 reported by MG
18
Affects Status Importance Assigned to Milestone
gcc-defaults (Ubuntu)
Invalid
Undecided
Unassigned
Intrepid
Invalid
Undecided
Unassigned
linux (Ubuntu)
Fix Released
High
Unassigned
Intrepid
Fix Released
High
Unassigned

Bug Description

Ubuntu Desktop i386 8.10 Alpha Intrepid Ibex will not install on a Via PD6000E motherboard. When "Install Ubuntu" is selected from the graphical installer, the following error message is displayed:

"This kernel requires the following features not present on the CPU: cmov
Unable to boot - please use a kernel appropriate for your CPU."

The processor is a VIA C3 Eden, commonly used on mobile and embedded boards (low power) and entertainment systems (e.g. MythTV boxes). According what I have been able to find out, the cmov instruction is an optional i686 instruction (i.e. is not required to be present for the CPU to be an I686), *not* an i386 instruction. The C3 does not implement this optional instruction. The same computer is currently running the Ubuntu server install for kernel : "Linux version 2.6.24-16-generic (buildd@palmer) (gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)) #1 SMP Thu Apr 10 13:23:42 UTC 2008" with no problems.

Since the Ubuntu ISO claims to be for i386 "intrepid-desktop-i386.iso", optional i686 instructions should not be relevant. Also, the description on the Ubuntu download page for this release says: "For almost all PCs. This includes most machines with Intel/AMD/etc type processors and almost all computers that run Microsoft Windows, as well as newer Apple Macintosh systems based on Intel processors. Choose this if you are at all unsure". According to this criteria, requiring "cmov" would be a bug.

This bug may have appeared several years ago in 59338, but that bug report isn't entirely clear on whether that was the actual original problem.

Revision history for this message
sam tygier (samtygier) wrote :

confirmed on via epia MII (same C3 cpu).

set high as this make ubuntu un bootable on, various i386 compatible systems with which hardy and previous versions worked.

Changed in linux-meta:
importance: Undecided → High
status: New → Confirmed
Revision history for this message
David Bentley (david-r-bentley) wrote :

I have had the same message displayed for a system using an AMD K6 III (i586) running at 450Mhz on an ASUS P5A motherboard.

Daily build of 08/08/08 had the same problem.

The system is running a fully updated 8.04 at present and has no problem with any past or current kernel for 8.04

8.04.1 has no problem when run in live mode either.

I am now watching this bug so could test with alpa4 or a later daily if required.

Revision history for this message
Forest Bond (forest-bond) wrote :

My understanding of this issue is that it is really a GCC bug, since GCC uses CMOV when compiling for 686, even though it is an optional instruction.

The traditional work-around is to compile for 586. I believe kernel option CONFIG_M586=y should fix this.

Note that current Ubuntu Server kernels already don't boot on C3 and other CPUs since they have CONFIG_M686=y.

Revision history for this message
Michael Rooney (mrooney) wrote :

Is this the same issue as bug #59338?

Revision history for this message
Forest Bond (forest-bond) wrote :

Mike Rooney:
> Is this the same issue as bug #59338?

Yep, same problem.

Revision history for this message
sam tygier (samtygier) wrote :

I started a thread on the devel-discuss list. if you have a strong opinion then I suggest voicing it there. But if there are only a few of us still using these chips, then ubuntu should probably move and focus on its target audience. we can easily move to debian.

Revision history for this message
MG (m12-griffin) wrote :

Forest Bond wrote on 2008-08-19: "Note that current Ubuntu Server kernels already don't boot on C3 and other CPUs since they have CONFIG_M686=y."

That is rather interesting, as I just installed ubuntu-8.04-server-i386.iso on the PD6000E board with VIA C3 Eden. It installed, rebooted, and I logged in. I then installed openssh-server, and did an apt-get update. If something isn't working in that version, it wasn't obvious to me.

Revision history for this message
Forest Bond (forest-bond) wrote : Re: [Bug 254453] Re: Ubuntu 8.10 Alpha-3 Intrepid Ibex - Via C3 CPU not Supported

Hi,

On Wed, Aug 20, 2008 at 10:15:53PM -0000, MG wrote:
> That is rather interesting, as I just installed
> ubuntu-8.04-server-i386.iso on the PD6000E board with VIA C3 Eden. It
> installed, rebooted, and I logged in. I then installed openssh-server,
> and did an apt-get update. If something isn't working in that version,
> it wasn't obvious to me.

Hm. Dunno what to say; I've heard the opposite. Of course, you can install
Ubuntu Server edition and then use a -386 or -generic kernel, and that would
work just fine. Perhaps there is an installation option to do that?

Note that I've not actually installed Server Edition myself, so this is mostly
hearsay for me.

-Forest

Revision history for this message
MG (m12-griffin) wrote :

Forest Bond wrote: "Of course, you can install Ubuntu Server edition and then use a -386 or -generic kernel, and that would work just fine. Perhaps there is an installation option to do that?".

I installed both the desktop and server editions of 8.04 just by accepting the defaults (except for doing manual disk partitioning). In other words, I didn't have to do anything special to get it to work. I don't recall seeing any questions about what kernel version to use.

Revision history for this message
Forest Bond (forest-bond) wrote :

Hi,

On Thu, Aug 21, 2008 at 04:22:39AM -0000, MG wrote:
> I installed both the desktop and server editions of 8.04 just by
> accepting the defaults (except for doing manual disk partitioning). In
> other words, I didn't have to do anything special to get it to work. I
> don't recall seeing any questions about what kernel version to use.

I think what's going on is this:

It's far from unheard of for VIA to use a slightly different processor on the
same model mainboard without marking the mainboard any differently. To make
things more complicated, a C3 processor can have any of a variety of different
cores, including the Samual 2 (C5B), Ezra (C5C), Ezra-T (C5N), and Nehemiah
(both the C5XL and the C5P are marketed as Nehemiah cores).

The Nehemiah cores implement CMOV, while the Samuel 2, Ezra, and Ezra-T cores do
not. I'm betting you actually have a Nehemiah core. What does /proc/cpuinfo
contain for you?

Perhaps there was a software change, too, but I was just dealing with someone
yesterday that was unable to boot his Ubuntu Server Edition system on a C3.

Thanks,
Forest

Revision history for this message
MG (m12-griffin) wrote :

CPU info is:

processor : 0
vendor_id : CentaurHauls
cpu family : 6
model : 7
model name : VIA Samuel 2
stepping : 3
cpu MHz : 601.361
cache size : 64 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu de tsc msr cx8 mtrr pge mmx 3dnow up
bogomips : 1204.72
clflush size : 32

Kernel version is: Linux version 2.6.24-16-generic (buildd@palmer) (gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)) #1 SMP Thu Apr 10 13:23:42 UTC 2008

At log-in (through ssh) it identifies itself as: 2.6.24-16-generic #1 SMP Thu Apr 10 13:23:42 UTC 2008 i686

The ISO that I installed was downloaded several months ago (23rd of May). Has someone made a recent change which affected this? If so, I thought that wasn't supposed to happen to an LTS release (dropping support for hardware part way through an LTS release cycle).

Revision history for this message
Forest Bond (forest-bond) wrote :

MG:

Are you sure your ISO is a Server Edition ISO?

Thanks,
Forest

Revision history for this message
MG (m12-griffin) wrote :

  Forest Bond wrote: "Are you sure your ISO is a Server Edition ISO?"

Yes. See the above message where I said I installed the server version. The file was "ubuntu-8.04-server-i386.iso" (as stated above). It installed using the normal server installer program. The end result looked like a normal Ubuntu server installation.

I will download the "ubuntu-8.04.1-server-i386.iso" version and install it today to see if I get any different results with that. There shouldn't be different results, as this is supposedly just a roll-up of updates. If the problem appears in that version, then we have narrowed down the window in which this change occurred.

Revision history for this message
MG (m12-griffin) wrote :

I downloaded ubuntu-8.04.1-server-i386.iso (the latest release) today and installed it on the Via PD6000E with C3. It installed and restarted without any noticeable problems. /proc/version reports the following version:

Linux version 2.6.24-19-generic (buildd@palmer) (gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)) #1 SMP Wed Jun 18 14:43:41 UTC 2008

The 8.04 server version will boot on a VIA C3 Samuel 2. Therefore if there is a problem, it appears to originate in Intrepid Ibex.

Revision history for this message
Forest Bond (forest-bond) wrote :

Hi,

On Thu, Aug 21, 2008 at 07:49:36PM -0000, MG wrote:
> I downloaded ubuntu-8.04.1-server-i386.iso (the latest release) today
> and installed it on the Via PD6000E with C3. It installed and restarted
> without any noticeable problems. /proc/version reports the following
> version:
>
> Linux version 2.6.24-19-generic (buildd@palmer) (gcc version 4.2.3
> (Ubuntu 4.2.3-2ubuntu7)) #1 SMP Wed Jun 18 14:43:41 UTC 2008
>
> The 8.04 server version will boot on a VIA C3 Samuel 2. Therefore if
> there is a problem, it appears to originate in Intrepid Ibex.

Well, for what it's worth, I have one case where a user installed Ubuntu 8.04
server edition on an EPIA EK board and the machine failed to boot for the first
time after installation. I'm unable to provide much more information,
unfortunately.

-Forest
--
Forest Bond
http://www.alittletooquiet.net
http://www.pytagsfs.org

Revision history for this message
MG (m12-griffin) wrote :

Forest Bond wrote: "I have one case where a user installed Ubuntu 8.04 server edition on an EPIA EK board and the machine failed to boot for the first time after installation."

The Via web site says: "The VIA EPIA EK Mini-ITX embedded board is available with the 1GHz or fanless 800MHz VIA Luke CoreFusion™ processor platform". Another page states: "The VIA CoreFusion processor platform is based on the 'Nehemiah' core architecture".

Wikipedia (if it can be believed) claims the Nehemiah has the cmov instruction. Therefore, it seems possible that the board in question has the cmov instruction.

The Nehemiah was a major redesign of the Via processor. The C3 name was kept more for brand recognition purposes than as any reflection of what was in the package. The CoreFusion processors have integrated the Northbridge into the Nehemiah CPU to reduce size and package count. There is more than one version of CoreFusion chip. The differences seem to be related to what sort of graphics and other peripherals were integrated into them.

If the above chain of information is correct, the problem the other user was reporting was not related to cmov. It is possible however that there was some older version of the board which was also known as EK. Did this other user provide the contents of /proc/cpuinfo? That would be the best way to know what processor is in the board.

Revision history for this message
Forest Bond (forest-bond) wrote :

Okay, here's the story:

In package base-installer, there is a script "kernel/i386.sh" that detects which
kernel should be used based on a variety of factors, including CPU attributes.
This detection is imperfect, and (while it worked in your case, MG), it does not
override the -server kernel choice on some boards that do not support PAE (like
the Luke CoreFusion CPU on the EK, apparently). That is how the same software
version results in a non-booting system on an EK, but works fine on some other
boards with CPUs that do not support PAE and/or CMOV.

I've been told that PAE detection will likely be implemented for Intrepid. That
should resolve most of the remaining CPU compatibility issues.

-Forest

Revision history for this message
David Bentley (david-r-bentley) wrote :

Th issue reported is that the current desktop 8.10 alpha 3 and later have a problem not 8.04 or 8.04.1

Revision history for this message
MG (m12-griffin) wrote :

 David Bentley wrote: "The issue reported is that the current desktop 8.10 alpha 3 and later have a problem not 8.04 or 8.04.1"

Yes, but the implication was that this was not a new problem, and that it may have been the result of a concious policy decision rather than a bug. What we have established is that the problem is indeed a new one (not present in any version of 8.04).

According to Forest Bond at 2008-08-21 it also appears that the real problem may be a bug in the installer which also affects other processors besides the C3. If so, then the problem may get fixed in a new release. I will be looking forward to testing for this.

Revision history for this message
Forest Bond (forest-bond) wrote :

Hi,

On Sat, Aug 23, 2008 at 05:40:50PM -0000, MG wrote:
> According to Forest Bond at 2008-08-21 it also appears that the real
> problem may be a bug in the installer which also affects other
> processors besides the C3. If so, then the problem may get fixed in a
> new release. I will be looking forward to testing for this.

The issue I mentioned was with the alternate installer, and only would have been
an issue with the Server Edition CD (since that CD tries to install the -server
kernel if it can).

The originally reported issue is not likely due to a problem with the installer.
The -generic kernel should not cause this issue, and (as far as I am aware) the
desktop CD should ship with the -generic kernel.

In short: this is a problem with the -generic kernel, as far as I am aware.

-Forest
--
Forest Bond
http://www.alittletooquiet.net
http://www.pytagsfs.org

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

The Ubuntu Kernel Team is planning to move to the 2.6.27 kernel for the upcoming Intrepid Ibex 8.10 release. As a result, the kernel team would appreciate it if you could please test this newer 2.6.27 Ubuntu kernel. There are one of two ways you should be able to test:

1) If you are comfortable installing packages on your own, the linux-image-2.6.27-* package is currently available for you to install and test.

--or--

2) The upcoming Alpha5 for Intrepid Ibex 8.10 will contain this newer 2.6.27 Ubuntu kernel. Alpha5 is set to be released Thursday Sept 4. Please watch http://www.ubuntu.com/testing for Alpha5 to be announced. You should then be able to test via a LiveCD.

Please let us know immediately if this newer 2.6.27 kernel resolves the bug reported here or if the issue remains. More importantly, please open a new bug report for each new bug/regression introduced by the 2.6.27 kernel and tag the bug report with 'linux-2.6.27'. Also, please specifically note if the issue does or does not appear in the 2.6.26 kernel. Thanks again, we really appreicate your help and feedback.

Revision history for this message
Colin Watson (cjwatson) wrote :

I believe that this is indeed fixed in 2.6.27, as it's now built with CONFIG_M586 again. Could somebody with access to one of these systems confirm this with a current daily build, please?

Revision history for this message
David Bentley (david-r-bentley) wrote :

I was Just about to get the daily build but since alpha5 should be available soon I will wait for that.

Revision history for this message
MG (m12-griffin) wrote :

I will install and test the alpha5 as soon as it is available.

Revision history for this message
Matthias Klose (doko) wrote :

gcc does generate code for i486 by default

Changed in gcc-defaults:
status: New → Invalid
Revision history for this message
David Bentley (david-r-bentley) wrote :

I have just downloaded alpha5 i386 desktop and can confirm that it runs OK in live mode on my AMD K6 III (i586) hardware.

When I have finished testing the live aspects (see if my usb wireless adapter an edimax EW-7318Ug is recognized and will work) I will install it on the hardware.

Revision history for this message
MG (m12-griffin) wrote :

I have downloaded Ubuntu 8.10 Ibex i386 desktop (intrepid-desktop-i386.iso) and server (intrepid-server-i386.iso) and installed them on a Via PD6000E motherboard. Both installed and started up.

The problem as originally reported appears to be resolved and this bug can be closed.

Revision history for this message
Colin Ian King (colin-king) wrote :

Confirmed - this change occurred in the following commit:

commit 3b76902afade4425f607700d6a264264df53b2b0
Author: Ben Collins <email address hidden>
Date: Sat Aug 23 15:42:08 2008 -0400

    UBUNTU: Update config files

    Signed-off-by: Ben Collins <email address hidden>

Changed in linux:
milestone: none → intrepid-alpha-5
status: Confirmed → Fix Committed
Steve Langasek (vorlon)
Changed in linux:
milestone: intrepid-alpha-5 → intrepid-alpha-6
Revision history for this message
Colin Watson (cjwatson) wrote :

This commit was in linux 2.6.27-1.2, and given the confirmation that everything is now working fine, I think Fix Released is better than Fix Committed.

Changed in linux:
status: Fix Committed → Fix Released
Revision history for this message
Colin Watson (cjwatson) wrote :

Oops, apparently this is supposed to stay fix-committed until we make the final decision to go with 2.6.27. Anyway, removing the milestone tag so that we don't have to see it on the milestone list.

Changed in linux:
milestone: intrepid-alpha-6 → none
status: Fix Released → Fix Committed
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Setting this to "Fix Released" based on the decision to stick with the 2.6.27 kernel for Intrepid - https://lists.ubuntu.com/archives/kernel-team/2008-September/003107.html

Changed in linux:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.