[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Unable to handle kernel paging request at virtual address c3018000



On Sun, May 12, 2002 at 09:20:23PM +0800, Michael Heydon wrote:
> Hello Nick,
> 
> >>>From this point I assumed the 16mb upgrade was faulty and replaced it 
> >>>with a new one, this seemed to be fine for about a month 

hmm, that's interesting.  Has the machine been subject to anything you think
might affect a memory chip, like power spikes and surges, or something?  I
know someone who took their laptop to an extended trip in China and the power
out in the wilds... well, to say it isn't too good isn't enough.  Lucky to
have power at all, but it was all spiky.  If he'd realized how terrible it
was going to be he would have taken a battery charger and let *it* fry its
poor little power train out trying to fill batteries, instead.

> >>>then the same 
> >>>problem hapenned again. To loose two 16mb memory
> >>>upgrades must mean that the onboard memory is corrupt too I guess, 
> >>>this machine cannot be used unless I remove the 16mb module and run
> >>>it with only 16mb. 

That the problem clears up and recurs with a new installation suggests that
something else within your laptop, or that is happening to your laptop, is
what's doing this.

Find out what's doing it before you indulge in ruining another memory module.

> >>>In Windows himem.sys looks a mess, I have
> >>>no idea what it should look like but I guess it shouldn't be filled 
> >>>with garbled random text.
> 
> actually himem.sys is an executable file and it should look like
> garbled text
 
Yes.  Although mounting its filesystem from linux would allow you to run 
the file command against it, which might say something like "MS-DOS executable".

CONFIG.SYS is not a real executable, it's a list of configuration options --
all other sys files should be programs.

Do you mean, perhaps, that a startup report *from* HIMEM is producing garbage
instead of its usual text message?  In which case, most of us not being 
regular MSwin users, you might mention what you expected to see.  Not sure 
we can address it very well anyway, but it'd be a case where you'll have to be
our eyeballs for us, we can't see what you really mean.

> NEM> debian:~# Unable to handle kernel paging request at virtual address c3018000 current->tss.cr3 = 00101000, %cr3 = 00101000
> NEM> *pde = 00000000
> NEM> Oops: 0002
> NEM> CPU:        0
> NEM> EIP:         0010:[<c01128f0>]
> NEM> EFLAGS:    00010046
> NEM> eax: c3018000    ebx: c2019f20    ecx: 00000246    edx: c3018000
> NEM> esi: c0112928    edi: c02dbf40    ebp: c02dbf18    esp: c02dbf20
> NEM> ds: 0018    es: 0018    ss: 0018
> NEM> Process swapper (pid: 0, process nr: 0, stackpage=c02db000)
> NEM> Stack: c02dbf44    c01139a5    c3018000    00000001    c0322f34    00000000    00000001    00000000
> NEM> 00000000    c02dvf5c    c011a8a9    00000000    c02da000    00002916    c010b325    aaaaffe0
> NEM> c010aff0    00000000    c02da000    00000000    c02da000    00002916    aaaaffe0    00000000
> NEM> Call Trace: [<c01139a5>] [<c011a8a9>] [<c010b325>] [<c010aff8>] [<c010893d>] [<c0106008>] [<c0108960>]
> NEM>         [<c010a1e0>] [<c0106000>] [<c010607b>] [<c0106000>] [<c0100175>]
> NEM> Code: c7 02 00 00 00 00 83 7a 3c 00 75 28 a1 3c a0 2d c0 c7 42 40
> NEM> Aiee, killing interrupt handler
> NEM> Kernel panic: Attempted to kill the idle tast!
> NEM> In swapper task - not syncing

Ahh much better.  A bit big, but at least, a real error message, and really
about as small as this sort can be. 

> this seems to be a low level error
> 
> I have only just started learning about this stuff but it appears to
> be having trouble swapping memory pages (maybe) a corrupt kernel or
> damaged ram could cause this.

There's a program called memtest86 that a lot of linux folk use to test 
whether RAM is bad or good.  It's not "a linux app" or even "a dos program" 
-- it's a boot image you use, and runs no OS, just checks the memory. 

The utility has gotten more popular since there are some badmem patches for
the Linux kernel that allow it to avoid using a bad memory spot on otherwise
good memory banks.  Very cool, but you have to know *precisely* where the
bad spot is.

In case you really do want to check if those modules you bought are still
good.

Yes, a corrupt kernel can also do this, or one where you compiled in some
options which are bad for your motherboard.  (While strictly speaking it
isn't corrupt since it might work fine on another machine, it's still a pain.
"allergic reaction" is a good analogy to use, though.)  "went bad over time"
is still something to look for though ... might this be a reaction to a slow
memory leak?  (Maybe, maybe not; the memory request itself is a userland thing
but making a request to hardware that's gotten iffy might do it.)  Or to 
actually having to *use* the last memory-chip on the module?  (fencepost error 
in motherboard design, perhaps. MEMTEST would catch this one, I think.)

However, you may want to check your CMOS setup screen and see if there's some
sort of option about memory, e.g 
	Additional Memory Module	[disabled]
					|    8 MB|
					|   16 MB|
or something like that.

> a new mother board isnt likely to help

And in the case of a laptop is roughly equivalent to just replacing the 
whole machine anyway.  Mind you, the motherboard might really be causing 
bit rot, but I hope my notes are able to help you troubleshoot it.

It does raise a good point though - Nick, you should definitely decide how
much money you are willing to throw at this one vs. getting some other little
box for debian, if you end up having to spend more on it.

> im quite possibly wrong, as i said i only just started with this stuff
> so please let me know if im off the mark
> -- 
> Best regards,
>  Michael

Welcome to debian, Michael, and thanks for chiming in to help Nick - you're
doing fine so far.

* Heather Stern * star@ many places...


-- 
To UNSUBSCRIBE, email to debian-laptop-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: