Re: TSCs are a no-no on i386

From: Adrian Bunk (bunk_at_fs.tum.de)
Date: 07/30/03

  • Next message: Marc Giger: "Re: PATCH : LEDs - possibly the most pointless kernel subsystem ever"
    Date:	Wed, 30 Jul 2003 20:45:29 +0200
    To: lkml <linux-kernel@vger.kernel.org>
    
    

    On Wed, Jul 30, 2003 at 11:30:33AM -0700, Mike Fedyk wrote:
    > On Wed, Jul 30, 2003 at 08:10:06PM +0200, Adrian Bunk wrote:
    > > On Wed, Jul 30, 2003 at 03:56:23PM +0200, Jan-Benedict Glaw wrote:
    > > >...
    > > > Please apply. Worst to say, even Debian seems to start using i486+
    > > > features (ie. libstdc++5 is SIGILLed on Am386 because there's no
    > > > "lock" insn available)...
    > >
    > > Shouldn't the 486 emulation in the latest 386 kernel images in Debian
    > > unstable take care of this?
    >
    > What emulation?

    486 emulation
    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. 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)

      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.

    cu
    Adrian

    -- 
           "Is there not promise of rain?" Ling Tan asked suddenly out
            of the darkness. There had been need of rain for many days.
           "Only a promise," Lao Er said.
                                           Pearl S. Buck - Dragon Seed
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at  http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at  http://www.tux.org/lkml/
    

  • Next message: Marc Giger: "Re: PATCH : LEDs - possibly the most pointless kernel subsystem ever"

    Relevant Pages

    • Re: my Trend Internet Security now out of date what next?
      ... More to the point, they look for the existence of code snippets which, ... virus would execute in and actually look at behavior while it runs in a ... Most of the better AV programs do have emulation capabilities, ...
      (alt.comp.anti-virus)
    • Re: rt20 patch question
      ... It is an emulation of some old ... timers and external interrupt capabilities (RTOM). ... Anyway the legacy CPU is the main thread/process and each legacy I/O ...
      (Linux-Kernel)
    • Re: Cycle by Cycle Problem?
      ... CPU's fast RAM cache must sync with normal video RAM. ... regular 1Mz CPU, it is always in sync with the video scanner. ... you'll do 17030 cycles worth of CPU emulation before ...
      (comp.sys.apple2)
    • Re: Could a PC do this?
      ... >>VAX would be far faster than a MicroVAX II. ... From the perspective of the CPU, if the emulation is correct, what's ... that allows it to be much faster than any silicon based VAX CPU ever ...
      (comp.os.vms)
    • Re: Clean CP/M 2 source disks available
      ... I don't know, I haven't used MYZ80, nor have I seen the sources, so I ... The CPU emulation is a table driven ... The package includes emulation of two ... Even under MP/M the host CPU doesn't get ...
      (comp.os.cpm)