Skip to Content.
Sympa Menu

baslinux - Re: [BL] ifconfig illegal instruction on 386ex

baslinux AT lists.ibiblio.org

Subject: Baslinux mailing list

List archive

Chronological Thread  
  • From: "David Moberg" <davidjmoberg AT gmail.com>
  • To: baslinux AT lists.ibiblio.org
  • Subject: Re: [BL] ifconfig illegal instruction on 386ex
  • Date: Thu, 18 May 2006 08:15:17 -0700

On 5/18/06, sindi keesan <keesan AT sdf.lonestar.org> wrote:
On Thu, 18 May 2006 3aoo-cvfd AT dea.spamcon.org wrote:
>
> Did it say: eth0 ?

Mine definitely said eth0.

>>> That probably means you have no eth0
>>
>> no hardware problem since it works with DOS
>
> I'm not suggesting there is a hardware problem.
> I'm suggesting that your insmod did not create eth0.
Mine did.

It is a hardware incompatibility with ifconfig and ping, I think.

Perhaps the busybox binary contains 486 instructions, which the 386
does not know how to execute. I wonder if the following kernel feature
would help? If I built a kernel with it, would you be willing to test
it?

CONFIG_CPU_EMU486
When used on a 386, Linux can emulate 3 instructions from the 486 set.
This allows user space programs compiled for 486 to run on a 386
without crashing with a SIGILL [Illegal instruction]. As any emulation,
performance will be very low, but since these instruction are not often
used, this might not hurt. The emulated instructions are:
- bswap (does the same as htonl())
- cmpxchg (used in multi-threading, mutex locking)
- xadd (rarely used)

[You can stop reading here]

Note that this can also allow Step-A 486's to correctly run multi-thread
applications since cmpxchg has a wrong opcode on this early CPU.

Don't use this to enable multi-threading on an SMP machine, the lock
atomicity can't be guaranted!

Although it's highly preferable that you only execute programs targetted
for your CPU, it may happen that, consecutively to a hardware replacement,
or during rescue of a damaged system, you have to execute such programs
on an inadapted processor. In this case, this option will help you get
your programs working, even if they will be slower.

It is recommended that you say N here in any case, except for the
kernels that you will use on your rescue disks.

This option should not be left on by default, because it means that
you execute a program not targetted for your CPU. You should recompile
your applications whenever possible.

If you are not sure, say N.

---

David




Archive powered by MHonArc 2.6.24.

Top of Page