lkml.org 
[lkml]   [1998]   [Jan]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: Laptops (APM) & 0040 crashes
Date
Hi John,

John Goerzen <jgoerzen@southwind.net> writes:
>
> The other day, I reported to linux-kernel a kernel oops in 2.0.33 that
> was a protection fault at 0040 during boot. Upon further
> investigation, it appears that the Debian boot disks do not suffer
> from this problem.

They probably don't have APM enabled in their kernel.

> Today, I stumbled across the following in the configure help for APM:
>
> because they don't have compliant BIOSes. Many "green" desktop
> machines also don't have compliant BIOSes, and this driver will
> cause those machines to panic during the boot phase (typically,
> these machines are using a data segment of 0040, which is reserved
> for the Linux kernel). If you get random kernel OOPSes that don't

The message above is a little misleading, the real point is that
the BIOS is using data segment 0x40 which is not a valid segment
descriptor for Linux. It is a valid segment offset in real mode,
but Linux is running in protected mode where access to this value
as a segment descriptor is illegal. The BIOS is buggy!

> My laptop is an IBM Thinkpad 310ED (I believe this model was
> introduced last fall. It is a P133 MMX). I am getting protection
> faults at 0040. Is it possible to make the Linux kernel use a
> different location for whatever it is trying to store at 0040? Would
> one of the exclude kernel parameters that I seem to recall hearing
> about at one time fix this, and if so, what exactly should I exclude?
> (How much RAM, etc.)

See above - it is not that simple.

> I am suspecting that this problem is why I cannot suspend or hibernate
> my laptop under Linux. It will do either of those fine under bare DOS
> (no config.sys, autoexec.bat, etc) or Windows.

DOS runs in real mode.

> Further, it seems that apm_bios.c in even 2.1.82 was last updated in
> 1996 -- and there may well be more laptops appearing since then that
> may need special support. Is anybody still working on the APM driver?
> It seems somewhat out of date.

OK, there is not much work going on with the APM driver for various
reasons - the biggy being that APM is now defunct :-( There is a new
API for doing power management that I know nothing about (yet). Also
there have not been any major revisions of teh APM BIOS specifiation anyway.

I think the only solution is to complain to IBM and get it fixed.
There may already be an updated BIOS available (I don't know).

Cheers,
Stephen
--
Stephen Rothwell Stephen.Rothwell@canb.auug.org.au

\
 
 \ /
  Last update: 2005-03-22 13:41    [W:0.083 / U:0.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site