Bug 200549 - [olpc] i586 kernel panics on boot on AMD Geode
[olpc] i586 kernel panics on boot on AMD Geode
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: binutils (Show other bugs)
rawhide
All Linux
high Severity medium
: ---
: ---
Assigned To: Jakub Jelinek
:
: 200037 (view as bug list)
Depends On:
Blocks: FC6Target FC6Blocker OLPCBlocker OLPCTracker
  Show dependency treegraph
 
Reported: 2006-07-28 12:28 EDT by David Zeuthen
Modified: 2013-03-05 22:46 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-08-01 19:29:35 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
photograph of panic (2.09 MB, image/jpeg)
2006-07-28 12:28 EDT, David Zeuthen
no flags Details

  None (edit)
Description David Zeuthen 2006-07-28 12:28:37 EDT
Description of problem:

panic right after boot - I think even before the initramfs is started. Will
attach screenshot.

Version-Release number of selected component (if applicable):

2.6.17-1.2449.fc6

How reproducible:

Always on AMD Geode. It's really bad as we need to move off the i686 kernel (see
bug 200330 and bug 200409) as the AMD geode is not fully i686 compatible and the
recent binutils started producing code where this is exposed. So right now we're
kind of screwed. Please advise. Thanks!
Comment 1 David Zeuthen 2006-07-28 12:28:39 EDT
Created attachment 133245 [details]
photograph of panic
Comment 2 Dave Jones 2006-07-28 12:49:27 EDT
*** Bug 200037 has been marked as a duplicate of this bug. ***
Comment 3 Dave Jones 2006-07-28 13:18:23 EDT
Ok, this looks like binutils breakage to me. hj 'optimised' the NOP handling for
686, but seems to have busted 586 in the process.

http://sources.redhat.com/ml/binutils/2006-06/msg00193.html

66 0f 1f is not valid on i586 (and possibly some 686s afair).
Comment 4 Dave Jones 2006-07-28 13:31:20 EDT
ftp://download.intel.com/design/Pentium4/manuals/25366720.pdf states ...

The multi-byte form of NOP is available on processors with model encoding:
•   CPUID.01H.EAX[Bytes 11:8] = 0110B or 1111B

So, only family 6 and 15. Little wonder 586 is hurting.
Comment 5 Dave Jones 2006-07-28 13:42:51 EDT
note btw, that this statement does nothing to guarantee that the right thing
happens with that code sequence on for eg, athlons, VIA-C3, or any other
non-intel 686.  It seems Intel only recently started documenting the multi-byte
variants of NOP, so any vendors that based their own 686 implementation on
reading (older) intel docs may be in for a surprise.
Comment 6 Christopher Blizzard 2006-07-28 15:38:59 EDT
So what's the plan to fix things here?  Unscrew binutils?  In our example it
would be great if we can compile somewhere else (for i686) and it still runs on
the geode.  Is upstream binutils actually broken in this case?
Comment 7 H.J. Lu 2006-07-28 18:50:52 EDT
Can you try this patch

http://sourceware.org/ml/binutils/2006-07/msg00360.html
Comment 8 Christopher Blizzard 2006-08-01 18:58:05 EDT
Sounds like we have a working kernel after a rebuild with binutils and this
patch.  David, are we good to close?
Comment 9 David Zeuthen 2006-08-01 19:29:35 EDT
Yup, the i686 kernel works on the Geode. Closing bug. Thanks to everyone involved!

Note You need to log in before you can comment on or make changes to this bug.