Re: Linux: "totally random lockups" XP: "never locks up"
Re: Linux: "totally random lockups" XP: "never locks up"
On Sat, 29 Mar 2008 19:19:06 -0400, Moshe Goldfarb wrote:
> On Sat, 29 Mar 2008 01:12:00 -0500, DFS wrote:
>
>> "I have just started experiencing totally random lockups. It's locked
>> up so bad I can't even cnt-alt-f1 to a tty. The keyboard does nothing.
>> I can wiggle the mouse around for a while then eventually it stops
>> working too. Nothing in the logs looks amiss. This has been happening
>> for 3 days now.
>>
>> This is on a feisty install that's been stable for 6 months. I
>> dual-boot to XP, XP never locks up. So I don't think it's hardware."
>>
>>
>>
>> http://ubuntuforums.org/showthread.php?t=587905&highlight=freeze&page=13
Any time I encounter random lockups in Linux, my first suspicion is bad
RAM or hard drive, and my second is a bad DSDT (see below).
>
> It's Linux, specifically Ubuntu.
>
> They have about 70 pages on the site about Ubuntu locking up.
That's 70 pages containing a handful of complaints and consisting mostly
of discussion and suggestions for tracing and fixing the problem, but of
course the lying MS shills want any visitors here to believe it's 70
pages of nothing but complaints. Nothing new there, but here's something
interesting for my fellow Linux users: One of the major causes of random
lockups under Linux is bad ACPI info provided by faulty DSDT's compiled
by Microsoft's ASL compiler. A more detailed description of the problem,
along with a general procedure for fixing it, can be found here:
------------------------------------------------------------
http://gentoo-wiki.com/HOWTO_Fix_Common_ACPI_Problems
"The ACPI Specification defines the requirements for the DSDT (and
everything else, for that matter) pretty explicitly. Intel's ASL
compiler, iasl, used to compile the DSDT to AML from ASL, will throw
errors and warnings if the underlying ASL is buggy. Unfortunately,
Microsoft's ASL compiler allows many of these errors and warnings to
sneak by. As a result, many OEMs write buggy DSDTs, and it turns out
that Windows is very forgiving of bugs in the DSDT that get by
Microsoft's compiler (not surprisingly)."
"What this means is that a DSDT that does not conform to the ACPI
specification will work under Windows, even though it
shouldn't. However, when you try to use it in Linux, where the ACPI
developers expect that the DSDT is written to comply with the standard
(and the Intel ASL compiler), the buggy sections of the DSDT are
unsupported. If you have a buggy DSDT, ACPI may not be aware that
certain devices exist. Or, if it is aware, it may not support all of
their capabilites. If you have either of these symptoms (missing or
incompletely supported functionality in /proc/acpi), then the cause may
be a buggy DSDT."
------------------------------------------------------------
Nearly every random-lockup problem that I've been able to trace on Linux
systems was found to be due either to faulty hardware or to a faulty
DSDT that was fixed by decompiling, fixing, and recompiling the code as
outlined on the above-mentioned webpage. The latter was caused not by
bad Linux programming, but by vendors' errors that "slipped through"
Microsoft's ASL compiler - whose faulty output Microsoft "just happens"
to ignore in their own code. Not that I'm accusing them of anything. No,
I'm sure it's just a coincidence, just like all the other coincidences
that unintentionally cripple competitors and make it appear to be their
own fault...
There is an effort to replace the faulty DSDT's with working ones, and
other groups are working on bypassing the DSDT the way Windows does, so
some distro's or releases might have problems where others don't. Also,
updates with new features that utilize some previously-unused section of
the DSDT that contains an error can cause random lockups or other odd
symptoms where they didn't exist in earlier versions.