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

Re: Kernel Panic Bad EIP Value



On Sun, Jan 04, 2004 at 10:51:00PM +0100, Michael Gellhaus wrote:
> Hi 
> 
> I have a problem installing woody on my new Asus P4P8X board.
> when I start from cd and enter bf24 at the promt, it will try to
> start, till it gets to the HDD's. Then I get some numbers,
> Bad EIP Value and Kernel Panic??? is there anybody who 
> can tell me what that means???
> If I start Kernel 2.2 it starts up fine, but all the hardware 
> seams not to be detected. takeing a look into the pci-list
> only shows intel unknown device for every pci device, 
> even a 3com 905 tx-m, which runs perfect on my other woody
> ( gigabyte BX2000+ board), is not detected.
> if anyone has an idea how to get debian on this machine, just let me know.
> 

I'm new to Debian, but I suppose my comments wouldn't hurt anyways.  The
only instance of "Bad EIP value" I can find in the kernel source comes from
the "traps.c" file in line 239.

http://lxr.linux.no/source/arch/i386/kernel/traps.c#L239

225         if (in_kernel) {
226 
227                 printk("\nStack: ");
228                 show_stack((unsigned long*)esp);
229 
230                 printk("\nCode: ");
231                 if(regs->eip < PAGE_OFFSET)
232                         goto bad;
233 
234                 for(i=0;i<20;i++)
235                 {
236                         unsigned char c;
237                         if(__get_user(c, &((unsigned char*)regs->eip)[i])) {
238 bad:
239                                 printk(" Bad EIP value.");
240                                 break;
241                         }
242                         printk("%02x ", c);
243                 }
244         }


The numbers you are getting appear to be the stack at the time of the kernel
panic.  According to the Intel documentation somewhere, the abort occurs when
the control unit is unable to store a meaningful value in the "eip" register,
which is supposed to contain the memory address of the instruction that caused
an exception fault.  In other words, this seems to point to a hardware issue.
What are the lines that you get immediately before the system spits out these
messages to the screen?  You mention in your email it happens after detecting
the HDD.  Is there any mention to a given *.c file from the kernel source?
Just to give you an example, here is a case where it is the USB code causing
the panic:

usb.c USB disconnect on device 00:02.1-0 address 1
Unable to handle kernel paging request at virtual address f8836bd1
printing EIP:
*pde=37afb067
*pte=00000000
Oops: 0000
CPU:0
EIP: 0010:[<f8836bd1>] Not tainted
... (some more lines)
code: Bad EIP value


Here is some information I found in a Mandrake forum:

http://www.linux-mandrake.com/en/81errata.php3#kt266a


Also, did you verify that the motherboard is fully supported?  


----------------
Nitebirdz
http://www.sacredchaos.com/



Reply to: