Messages in this thread | | | Date | Mon, 2 Dec 1996 23:52:16 -0500 (EST) | From | Tyson D Sawyer <> | Subject | Re: Strange OOPS in 2.0.25 kernel |
| |
I'm no expert at this but I just got a quick lesson on it from a helpful person on the list. Here goes:
> Hello, i have a system that ran fine for some months with 1.2.13 kernel. > About two weeks ago i installed 2.0.25 kernel and related commands > and libraries. > After 7 days from last reboot i got the oops: > > --------------------------------------------------------------------------- > Unable to handle kernel NULL pointer dereference at virtual address > c0000000 current->tss.cr3 = 00a46000, %cr3 = 00a46000 *^^^^^^^ [...] > EIP: 0010:[<0011d69a>] ^^^ ^^^^^^^^^ [...] > eax: 000003fc ebx: 0057c000 ecx: 00000000 edx: 00000003 ^^^ *^^^^^^^ [...] > Code: 11d69a <kmalloc+ca/220> cmpl $0x55ffaa,(%ecx) ^^^^^^ ^^^^^^ > --------------------------------------------------------------------------- > Unable to handle kernel paging request at virtual address c8008b80 *^^^^^^^ > EIP: 0010:[<00123c60>] ^^^ ^^^^^^^^ [...] > eax: 08008b80 ebx: 00010302 ecx: 00000302 edx: 00000444 ^^^ *^^^^^^^ [...] > Code: 123c60 <get_hash_table+30/d0> cmpl %ebp,(%eax) ^^^^^^ ^^^^^^ > --------------------------------------------------------------------------- > Unable to handle kernel NULL pointer dereference at virtual address > c0000028 current->tss.cr3 = 00018000, %cr3 = 00018000 *^^^^^^^ [...] > EIP: 0010:[<001238f4>] ^^^ ^^^^^^^^^^ [...] > eax: 00000000 ebx: 00000000 ecx: 00000000 edx: 00c94bf4 ^^^ *^^^^^^^ [...] > Code: 1238f4 <sync_buffers+54/1a0> cmpl %ebx,0x28(%eax) ^^^^^^ ^^^^^^^^^^
> --------------------------------------------------------------------------- > Unable to handle kernel paging request at virtual address c8008b80 *^^^^^^^ > EIP: 0010:[<00123c60>] ^^^^^^^^ [...] > eax: 08008b80 ebx: 00d50302 ecx: 00000400 edx: 00000444 ^^^ *^^^^^^^ > Code: 123c60 <get_hash_table+30/d0> cmpl %ebp,(%eax) ^^^^^^ ^^^^^^ ------------------------------------------------------------------------------ > Spada Flavio CRCC s.r.l, via Passerini 2, 20052 Monza (MI) > ITALY Tel. +39.39.387998 FAX > +39.39.382115 e-mail: fl@crcc.it > ------------------------------------------------------------------------------
In every case the EIP (extended instruction pointer) indicates that the code was attempting to access a value in memory. The address of that value (according to the instruction and the value of the index register used) is different by the 2 most significant bits from what the processor attempted to access. That is noticed by the most significant nibble changing from 0 to c in every oops as I marked by the *'s in the context above.
I am a bit puzzled by the registers containing what appears to be a proper pointer value but the processor attempts to access a different location. Is this a CPU problem rather than a cache or memory problem? If it where a memory problem of some kind I would expect the error to show up in the index registers, yet it doesn't. Any real experts able to comment on this?
Have you checked your CPU fan lately? Is it working normally without being clogged with dust?
Cheers! Ty
| |