[erlang-bugs] R14B02+ crashes on older hardware, Windows XP

Patrick Baggett <>
Sat Jul 2 21:40:01 CEST 2011


aren't mfence/sfence instructions only really useful in SMP systems where
visibility of load/stores with respect to other CPUs is required?

On Sat, Jul 2, 2011 at 2:38 PM, Mikael Pettersson <> wrote:

> sgm writes:
>  > On Sat, Jul 2, 2011 at 6:52 AM, Mikael Pettersson <>
> wrote:
>  > > sgm writes:
>  > >  > We have a field data collection application recently re-written to
> use
>  > >  > CouchDB. It requires minimal computer resources, so a number of the
>  > >  > notebooks we use are circa 2001/2002. All run Windows XP with SP2
> or
>  > >  > SP3, and we are using CouchDB 1.1.
>  > >  >
>  > >  > On the older machines, Erlang R14B02 and R14B03 crash almost
>  > >  > immediately upon running werl or erl. R14B01 does not.
>  > >  >
>  > >  > I'm attaching a screenshot of the crash on one of the machines. In
> all
>  > >  > cases it happens at the same point, almost immediately, is 100%
>  > >  > reproducible, and no crash dump is generated.
>  > >  >
>  > >  > Here are the machines where it crashes:
>  > >  >
>  > >  > Dell Inspiron 2500, 1.0GHz Pentium III, 160MB RAM, system summary
>  > >  > rctc11.txt attached
>  > >  > Dell Inspiron 2600, 1.06GHz Celeron, 128MB RAM, system summary
>  > >  > rctc12.txt attached
>  > >  > Gateway Solo 9300, 750MHz Pentium III, 160MB RAM, system summary
>  > >  > rctc16.txt attached
>  > >  >
>  > >  > For comparison, I'm also including this machine of similar vintage
>  > >  > which does NOT crash:
>  > >  >
>  > >  > Dell Inspiron 2650, 1.7GHz Pentium 4, 256MB RAM, system summary
>  > >  > rctc13.txt attached
>  > >
>  > > You need to rebuild the Erlang VM with the
> --enable-ethread-pre-pentium4-compatibility
>  > > option.
>  > >
>  > > This is a big ugly bug in the Erlang VM.
>  > >
>  >
>  > Thanks Mikael, I suspected it was a CPU-related issue. You say it's a
>  > bug, but the documented option implies it's intentional. Are you
>  > suggesting the VM should detect the CPU at startup and load the
>  > appropriate library?
>
> The bug is that the default is unsafe.  It would have been far better
> to maintain compatibility by default, but offer an opt-in option for
> enabling higher performance.
>
> It's not a matter of selecting the right version of some small library,
> the option affects micro-optimized instruction sequences for
> synchronization,
> which are visible to and potentially inlined in many parts of the VM.
> _______________________________________________
> erlang-bugs mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-bugs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20110702/38da0111/attachment.html>


More information about the erlang-bugs mailing list