Re: prob. getting exact line of oops using kgdb.

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

 



hi,

please search google groups for the following : "HOWTO find oops
location" in the linux kernel mailing list.

it should be helpful.

also: EIP is at speedo_open+0x16/0x1a0 means that 
EIP is at an offset of 0x16 bytes from the begining of speedo_open.

generally you should be able to get the disasm version of the
problematic code  and locate the offending lines.

also, take a look at Documentation/oops-tracing.txt.

kind regards
anupam

On Tue, 05 Oct 2004 17:44:34 +0530, Mandeep Sandhu
<mandeep_sandhu@xxxxxxxxxxx> wrote:
> hi all,
> 
> i was trying my hand at kgdb (thanx to u all my setup is wrking fine
> after running gdb with the uncompressed image). I deliberatley put
> a null pointer dereference in the open fxn. of the eepro100 driver.
> now when opening eth0 the kernel seg faults as expected. In my
> gdb setup i have put a breakpoint in "speedo_open" (the open fxn.
> of the eepro driver). After the seg fault the control comes to the
> gdb prompt with the o/p -
> 
> Can't send signals to this remote system.  SIGSEGV not sent.
> Unable to handle kernel NULL pointer dereference at virtual address 00000000
>  printing eip:
> *pde = 00000000
> Oops: 0000 [#1]
> Modules linked in: af_packet floppy ext3 jbd intel_agp agpgart uhci_hcd usbcore rtc
> CPU:    0
> EIP:    0060:[<c01f3b06>]    Not tainted
> EFLAGS: 00010386   (2.6.8.1)
> EIP is at speedo_open+0x16/0x1a0
> eax: d29d6000   ebx: d1e1c220   ecx: d1e1c000   edx: ffffffed
> esi: 00000000   edi: d1e1c000   ebp: d104dec4   esp: d104deb4
> ds: 007b   es: 007b   ss: 0068
> Process ifplugd (pid: 1205, threadinfo=d104c000 task=d1796cd0)
> Stack: d29d6000 d1e1c000 00000000 00001002 d104ded8 c023850b d1e1c000 00001003
>        d1e1c000 d104def4 c0239937 d1e1c000 00000000 d104df2c ffffff9d 00000000
>        d104df58 c0274c68 d1e1c000 00001003 00000000 00000000 00000000 d1e1c000
> Call Trace:
>  [<c0106fbb>] show_stack+0x9b/0xb0
>  [<c010710b>] show_registers+0x11b/0x180
>  [<c0107270>] die+0x70/0xe0
>  [<c011373c>] do_page_fault+0x34c/0x5ea
>  [<c0106bdd>] error_code+0x2d/0x40
>  [<c023850b>] dev_open+0x8b/0xe0
>  [<c0239937>] dev_change_flags+0x57/0x130
>  [<c0274c68>] devinet_ioctl+0x4e8/0x5a0
>  [<c0276896>] inet_ioctl+0x66/0x80
>  [<c0230a4c>] sock_ioctl+0x17c/0x250
>  [<c01579ef>] sys_ioctl+0x15f/0x200
>  [<c0105b99>] sysenter_past_esp+0x52/0x79
> Code: 8b 0d 00 00 00 00 51 68 bd 31 2c c0 e8 99 41 f2 ff f6 83 ec
>  kgdb8250_interrupt: brk
> 
> if i want to get the exact line which caused this - how do i get it?
> 
> EIP says - "speedo_open+0x16/0x1a0". This i'm guessing is the offset
> of the line inside speedo_open that caused the fault...right??
> what does the "/" between the 2 hex adr's mean?
> 
> TIA,
> -mandeep
> 
> --
> Kernelnewbies: Help each other learn about the Linux kernel.
> Archive:       http://mail.nl.linux.org/kernelnewbies/
> FAQ:           http://kernelnewbies.org/faq/
> 
> 


-- 
if you need gmail invites, let me know !

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux