Solved

Ignoring Athlon XP architecture at Linux Boot -- need i686 only

Posted on 2003-12-05
7
637 Views
Last Modified: 2008-03-06
Using RedHat ES 3.0.

I have an insmod'able .o file that will only run on i686, but not Athlon. A mess, but I have no choice. If 'uname -p' returns 'athlon', the .o file will not load, because of undefined symbols. Mostly look like network lib symbols.

'uname -m' returns 'i686', and 'uname -i' returns 'i386'. Those are ok.

Is there some way on grub boot to tell the OS that my architecture is not 'athlon', but 'pentium3' or some kind of pentium.

I don't think re-making the OS will help, I don't see any symbols in the various kernel makefiles that allow me to select the CPU type.

Short of getting a different motherboard and CPU (too expensive -- I need 2 GB RAM), I'm also willing to entertain other solutions.

Thanks.
BB
0
Comment
Question by:rjbryla
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
7 Comments
 
LVL 24

Expert Comment

by:shivsa
ID: 9886910
i think u may try setarch.

Setarch makes it possible to change the output produced by the uname  command. This is useful for a number of reasons, such as running 32-bit applications (those written to expect a particular value from uname -m) in 64-bit environments.

The format for the setarch command is:

setarch <arch> <command>

(Where <arch> represents the desired architecture string (such as i386), and <command> represents the command to be run while the architecture has been modified.) Note that <command> can be omitted, in which case /bin/sh is run.

In addition, some applications (such as older versions of Java) are written to assume a 3GB virtual address space; when run on systems with larger virtual address spaces (such as 64-bit AMD64-based systems, or 32-bit systems running the hugemem kernel) such applications can malfunction. The setarch utility makes it possible to emulate a 3GB virtual address space, allowing such applications to run properly:

setarch -3 java
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 9888369
could you please post the exact error messages, and which program produced it
0
 

Author Comment

by:rjbryla
ID: 9888494
'setarch' was something I originally thought of -- but when 'insmod' runs, it goes against the kernel symbols, which don't change when 'setarch' is run, so the problem remains.

Thanks for the suggestion.
0
 

Accepted Solution

by:
rjbryla earned 0 total points
ID: 9890711
Figured it out myself -- after an all-nighter -- I did finally have to rebuild the kernel.

Set the makefile parameter CONFIG_M686 to 'y', and commented out CONFIG_MK7.

THanks again for all your help.
0
 
LVL 24

Expert Comment

by:shivsa
ID: 9890731
Good to know you got the issue resolved. You can close the question by following this guidelines:
http://www.experts-exchange.com/help.jsp#hs5
0

Featured Post

Secure Your WordPress Site: 5 Essential Approaches

WordPress is the web's most popular CMS, but its dominance also makes it a target for attackers. Our eBook will show you how to:

Prevent costly exploits of core and plugin vulnerabilities
Repel automated attacks
Lock down your dashboard, secure your code, and protect your users

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

SSH (Secure Shell) - Tips and Tricks As you all know SSH(Secure Shell) is a network protocol, which we use to access/transfer files securely between two networked devices. SSH was actually designed as a replacement for insecure protocols that sen…
Google Drive is extremely cheap offsite storage, and it's even possible to get extra storage for free for two years.  You can use the free account 15GB, and if you have an Android device..when you install Google Drive for the first time it will give…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Suggested Courses

630 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question