calling strace is giving oops - Linux
This is a discussion on calling strace is giving oops - Linux ; Now my problem is,
When I insert the module and then call strace on any executable ( e.g.
i simple "Hello World" program).... strace fails and kernel gives
oops ...
Below is the dmesg log....
Can someone has any idea ...
-
calling strace is giving oops
Now my problem is,
When I insert the module and then call strace on any executable ( e.g.
i simple "Hello World" program).... strace fails and kernel gives
oops ...
Below is the dmesg log....
Can someone has any idea wt might be the reason?
It is showing NULL pointer dereference at virtual address
00000000 ...
My module is used for providing buffer overflow protection.
It's doing this by hooking into syscalltable...
<1>Unable to handle kernel NULL pointer dereference at virtual address
00000000
printing eip:
00000000
*pde = 00000000
Oops: 0000 [#24]
CPU: 0
EIP: 0060:[<00000000>] Tainted: GF U
EFLAGS: 00010213 (2.6.5-7.97-default)
EIP is at 0x0
eax: 00000000 ebx: bffff070 ecx: cdc56690 edx: 00000000
esi: bffff070 edi: bfffefe4 ebp: c9eca000 esp: c9ecbfc0
ds: 007b es: 007b ss: 0068
Process a.out (pid: 30280, threadinfo=c9eca000 task=cdc56690)
Stack: c0107e27 bffff070 00000000 400144d5 bffff070 bfffefe4 bfffeeb4
ffffffda
0000007b 0000007b 00000005 40011c64 00000073 00000212 bfffee20
0000007b
Call Trace:
[] syscall_call+0x7/0xb
Code: Bad EIP value.
-
Re: calling strace is giving oops
Ashish Kumar wrote:
> Now my problem is,
>
> When I insert the module and then call strace on any executable ( e.g.
> i simple "Hello World" program).... strace fails and kernel gives
> oops ...
> Below is the dmesg log....
>
> Can someone has any idea wt might be the reason?
> It is showing NULL pointer dereference at virtual address
> 00000000 ...
> My module is used for providing buffer overflow protection.
> It's doing this by hooking into syscalltable...
>
>
>
> <1>Unable to handle kernel NULL pointer dereference at virtual address
> 00000000
> printing eip:
> 00000000
> *pde = 00000000
> Oops: 0000 [#24]
> CPU: 0
> EIP: 0060:[<00000000>] Tainted: GF U
> EFLAGS: 00010213 (2.6.5-7.97-default)
> EIP is at 0x0
> eax: 00000000 ebx: bffff070 ecx: cdc56690 edx: 00000000
> esi: bffff070 edi: bfffefe4 ebp: c9eca000 esp: c9ecbfc0
> ds: 007b es: 007b ss: 0068
> Process a.out (pid: 30280, threadinfo=c9eca000 task=cdc56690)
> Stack: c0107e27 bffff070 00000000 400144d5 bffff070 bfffefe4 bfffeeb4
> ffffffda
> 0000007b 0000007b 00000005 40011c64 00000073 00000212 bfffee20
> 0000007b
> Call Trace:
> [] syscall_call+0x7/0xb
>
> Code: Bad EIP value.
Just an educated guess: As it's your application that causes the Oops
and noone else, maybe your module isn't correctly hooking into the
syscall table. As I understand it (never been there, never done that),
doing that is a nontrivial thing.
How about you dump some part of the syscall table before and after you
hook into it and see if the hook is been done correctly.
--
These are my personal views and not those of Fujitsu Siemens Computers!
Josef Möllers (Pinguinpfleger bei FSC)
If failure had no penalty success would not be a prize (T. Pratchett)
Company Details: http://www.fujitsu-siemens.com/imprint.html
-
Re: calling strace is giving oops
On Dec 12, 12:42 pm, Josef Moellers
siemens.com> wrote:
> Ashish Kumar wrote:
> > Now my problem is,
>
> > When I insert the module and then call strace on any executable ( e.g.
> > i simple "Hello World" program).... strace fails and kernel gives
> > oops ...
> > Below is the dmesg log....
>
> > Can someone has any idea wt might be the reason?
> > It is showing NULL pointer dereference at virtual address
> > 00000000 ...
> > My module is used for providing buffer overflow protection.
> > It's doing this by hooking into syscalltable...
>
> > <1>Unable to handle kernel NULL pointer dereference at virtual address
> > 00000000
> > printing eip:
> > 00000000
> > *pde = 00000000
> > Oops: 0000 [#24]
> > CPU: 0
> > EIP: 0060:[<00000000>] Tainted: GF U
> > EFLAGS: 00010213 (2.6.5-7.97-default)
> > EIP is at 0x0
> > eax: 00000000 ebx: bffff070 ecx: cdc56690 edx: 00000000
> > esi: bffff070 edi: bfffefe4 ebp: c9eca000 esp: c9ecbfc0
> > ds: 007b es: 007b ss: 0068
> > Process a.out (pid: 30280, threadinfo=c9eca000 task=cdc56690)
> > Stack: c0107e27 bffff070 00000000 400144d5 bffff070 bfffefe4 bfffeeb4
> > ffffffda
> > 0000007b 0000007b 00000005 40011c64 00000073 00000212 bfffee20
> > 0000007b
> > Call Trace:
> > [] syscall_call+0x7/0xb
>
> > Code: Bad EIP value.
>
> Just an educated guess: As it's your application that causes the Oops
> and noone else, maybe your module isn't correctly hooking into the
> syscall table. As I understand it (never been there, never done that),
> doing that is a nontrivial thing.
> How about you dump some part of the syscall table before and after you
> hook into it and see if the hook is been done correctly.
>
> --
> These are my personal views and not those of Fujitsu Siemens Computers!
> Josef Möllers (Pinguinpfleger bei FSC)
> If failure had no penalty success would not be a prize (T. Pratchett)
> Company Details:http://www.fujitsu-siemens.com/imprint.html- Hide quoted text -
>
> - Show quoted text -
Thanks , i see that ..