All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-help] BUG: unable to handle kernel paging request
@ 2007-01-26 11:46 Victor Shulyak
  2007-01-26 16:07 ` Philippe Gerum
  0 siblings, 1 reply; 12+ messages in thread
From: Victor Shulyak @ 2007-01-26 11:46 UTC (permalink / raw)
  To: Ace Help

[-- Attachment #1: Type: text/plain, Size: 416 bytes --]

Hello,

Today I upgraded my system to xenomai 2.3.0 + kernel 2.6.19.2.
I encountered the following syslog message:

BUG: unable to handle kernel paging request at virtual address 0d40004a
while no xenomai application running.

The system didn't crash, just such kernel message.


p4, nvidia geforce 4, FC6, gnome + compiz manager, gcc 4.1.1 shipped
with FC6, NVIDIA-Linux-x86-1.0-9631 nvidia driver.

Thanks, Victor

[-- Attachment #2: config.log-xenomai.gz --]
[-- Type: application/x-gzip, Size: 8947 bytes --]

[-- Attachment #3: config-kernel.gz --]
[-- Type: application/x-gzip, Size: 11324 bytes --]

[-- Attachment #4: dmesg.gz --]
[-- Type: application/x-gzip, Size: 5914 bytes --]

[-- Attachment #5: cpuinfo.gz --]
[-- Type: application/x-gzip, Size: 307 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-26 11:46 [Xenomai-help] BUG: unable to handle kernel paging request Victor Shulyak
@ 2007-01-26 16:07 ` Philippe Gerum
  2007-01-26 18:46   ` Dmitry Adamushko
  0 siblings, 1 reply; 12+ messages in thread
From: Philippe Gerum @ 2007-01-26 16:07 UTC (permalink / raw)
  To: Victor Shulyak; +Cc: Ace Help

On Fri, 2007-01-26 at 17:46 +0600, Victor Shulyak wrote:
> Hello,
> 
> Today I upgraded my system to xenomai 2.3.0 + kernel 2.6.19.2.
> I encountered the following syslog message:
> 
> BUG: unable to handle kernel paging request at virtual address 0d40004a
> while no xenomai application running.
> 
> The system didn't crash, just such kernel message.
> 
> 
> p4, nvidia geforce 4, FC6, gnome + compiz manager, gcc 4.1.1 shipped
> with FC6, NVIDIA-Linux-x86-1.0-9631 nvidia driver.
> 

> BUG: unable to handle kernel paging request at virtual address >
0d40004a
> printing eip:
> c7b84d51
> *pde = 00000000
> Oops: 0002 [#1]

I guess that you already know what kind of answer you would obtain on
the LKML when reporting faults with Nvidia modules loaded, right?
However, since there seem to be a clean backtrace, maybe we could give a
try anyway. Could you objdump your kernel image, then locate the faulty
routine containing eip=0xc7b84d51? TIA,

> Thanks, Victor
> _______________________________________________
> Xenomai-help mailing list
> Xenomai-help@domain.hid
> https://mail.gna.org/listinfo/xenomai-help
-- 
Philippe.




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-26 16:07 ` Philippe Gerum
@ 2007-01-26 18:46   ` Dmitry Adamushko
  2007-01-26 22:46     ` Philippe Gerum
  2007-01-29 16:17     ` Victor Shulyak
  0 siblings, 2 replies; 12+ messages in thread
From: Dmitry Adamushko @ 2007-01-26 18:46 UTC (permalink / raw)
  To: rpm; +Cc: Xenomai help

>
> I guess that you already know what kind of answer you would obtain on
> the LKML when reporting faults with Nvidia modules loaded, right?
> However, since there seem to be a clean backtrace, maybe we could give a
> try anyway. Could you objdump your kernel image, then locate the faulty
> routine containing eip=0xc7b84d51? TIA,

But it doesn't point to either some part of the kernel code

--->   .text : 0xc0100000 - 0xc030a212   (2088 kB)

or any kernel module (not vmalloc'ed area).

Unless some code would copy another code at this location (kmalloc'ed)
and then execute it.

Let's suppose we can believe in sanity of the call trace, then would
you, Victor, provide a disassembled code for
__ipipe_handle_exception() ?

Call Trace:
 [<c0112566>] __ipipe_handle_exception+0x58/0x11e
 [<c01050f4>] do_divide_error+0x0/0xb1
 [<c0309202>] error_code+0x3e/0x4c


Memory: 384496k/393152k available (2088k kernel code, 8108k reserved,
633k data, 180k init, 0k highmem)
virtual kernel memory layout:
    fixmap  : 0xfffb7000 - 0xfffff000   ( 288 kB)
    vmalloc : 0xd8800000 - 0xfffb5000   ( 631 MB)
    lowmem  : 0xc0000000 - 0xd7ff0000   ( 383 MB)
   .init : 0xc03ac000 - 0xc03d9000   ( 180 kB)
   .data : 0xc030a212 - 0xc03a88f4   ( 633 kB)
   .text : 0xc0100000 - 0xc030a212   (2088 kB)


-- 
Best regards,
Dmitry Adamushko


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-26 18:46   ` Dmitry Adamushko
@ 2007-01-26 22:46     ` Philippe Gerum
  2007-01-26 23:01       ` Philippe Gerum
  2007-01-29 16:17     ` Victor Shulyak
  1 sibling, 1 reply; 12+ messages in thread
From: Philippe Gerum @ 2007-01-26 22:46 UTC (permalink / raw)
  To: Dmitry Adamushko; +Cc: Xenomai help

On Fri, 2007-01-26 at 19:46 +0100, Dmitry Adamushko wrote:
> >
> > I guess that you already know what kind of answer you would obtain on
> > the LKML when reporting faults with Nvidia modules loaded, right?
> > However, since there seem to be a clean backtrace, maybe we could give a
> > try anyway. Could you objdump your kernel image, then locate the faulty
> > routine containing eip=0xc7b84d51? TIA,
> 
> But it doesn't point to either some part of the kernel code
> 
> --->   .text : 0xc0100000 - 0xc030a212   (2088 kB)
> 
> or any kernel module (not vmalloc'ed area).
> 
> Unless some code would copy another code at this location (kmalloc'ed)
> and then execute it.
> 
> Let's suppose we can believe in sanity of the call trace, then would
> you, Victor, provide a disassembled code for
> __ipipe_handle_exception() ?
> 

The backtrace is sane, I'm afraid. The following patch should fix the
issue:

--- arch/i386/kernel/entry.S~	2006-12-16 13:32:29.000000000 +0100
+++ arch/i386/kernel/entry.S	2007-01-26 23:44:59.000000000 +0100
@@ -1032,7 +1032,7 @@
 	RING0_INT_FRAME
 	pushl $0			# no error code
 	CFI_ADJUST_CFA_OFFSET 4
-	pushl $do_divide_error
+	PUSH_XVEC(do_divide_error)
 	CFI_ADJUST_CFA_OFFSET 4
 	jmp error_code
 	CFI_ENDPROC

> Call Trace:
>  [<c0112566>] __ipipe_handle_exception+0x58/0x11e
>  [<c01050f4>] do_divide_error+0x0/0xb1
>  [<c0309202>] error_code+0x3e/0x4c
> 
> 
> Memory: 384496k/393152k available (2088k kernel code, 8108k reserved,
> 633k data, 180k init, 0k highmem)
> virtual kernel memory layout:
>     fixmap  : 0xfffb7000 - 0xfffff000   ( 288 kB)
>     vmalloc : 0xd8800000 - 0xfffb5000   ( 631 MB)
>     lowmem  : 0xc0000000 - 0xd7ff0000   ( 383 MB)
>    .init : 0xc03ac000 - 0xc03d9000   ( 180 kB)
>    .data : 0xc030a212 - 0xc03a88f4   ( 633 kB)
>    .text : 0xc0100000 - 0xc030a212   (2088 kB)
> 
> 
-- 
Philippe.




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-26 22:46     ` Philippe Gerum
@ 2007-01-26 23:01       ` Philippe Gerum
  2007-01-29 12:23         ` Victor Shulyak
  0 siblings, 1 reply; 12+ messages in thread
From: Philippe Gerum @ 2007-01-26 23:01 UTC (permalink / raw)
  To: Dmitry Adamushko; +Cc: Xenomai help

On Fri, 2007-01-26 at 23:46 +0100, Philippe Gerum wrote:
> On Fri, 2007-01-26 at 19:46 +0100, Dmitry Adamushko wrote:
> > >
> > > I guess that you already know what kind of answer you would obtain on
> > > the LKML when reporting faults with Nvidia modules loaded, right?
> > > However, since there seem to be a clean backtrace, maybe we could give a
> > > try anyway. Could you objdump your kernel image, then locate the faulty
> > > routine containing eip=0xc7b84d51? TIA,
> > 
> > But it doesn't point to either some part of the kernel code
> > 
> > --->   .text : 0xc0100000 - 0xc030a212   (2088 kB)
> > 
> > or any kernel module (not vmalloc'ed area).
> > 
> > Unless some code would copy another code at this location (kmalloc'ed)
> > and then execute it.
> > 
> > Let's suppose we can believe in sanity of the call trace, then would
> > you, Victor, provide a disassembled code for
> > __ipipe_handle_exception() ?
> > 
> 
> The backtrace is sane, I'm afraid. The following patch should fix the
> issue:
> 
> --- arch/i386/kernel/entry.S~	2006-12-16 13:32:29.000000000 +0100
> +++ arch/i386/kernel/entry.S	2007-01-26 23:44:59.000000000 +0100
> @@ -1032,7 +1032,7 @@
>  	RING0_INT_FRAME
>  	pushl $0			# no error code
>  	CFI_ADJUST_CFA_OFFSET 4
> -	pushl $do_divide_error
> +	PUSH_XVEC(do_divide_error)

s,PUSH_XVEC,PUSH_XCODE,

>  	CFI_ADJUST_CFA_OFFSET 4
>  	jmp error_code
>  	CFI_ENDPROC

> > Call Trace:
> >  [<c0112566>] __ipipe_handle_exception+0x58/0x11e
> >  [<c01050f4>] do_divide_error+0x0/0xb1
> >  [<c0309202>] error_code+0x3e/0x4c
> > 
> > 
> > Memory: 384496k/393152k available (2088k kernel code, 8108k reserved,
> > 633k data, 180k init, 0k highmem)
> > virtual kernel memory layout:
> >     fixmap  : 0xfffb7000 - 0xfffff000   ( 288 kB)
> >     vmalloc : 0xd8800000 - 0xfffb5000   ( 631 MB)
> >     lowmem  : 0xc0000000 - 0xd7ff0000   ( 383 MB)
> >    .init : 0xc03ac000 - 0xc03d9000   ( 180 kB)
> >    .data : 0xc030a212 - 0xc03a88f4   ( 633 kB)
> >    .text : 0xc0100000 - 0xc030a212   (2088 kB)
> > 
> > 
-- 
Philippe.




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-26 23:01       ` Philippe Gerum
@ 2007-01-29 12:23         ` Victor Shulyak
  2007-01-29 14:21           ` Jan Kiszka
  2007-01-29 15:21           ` Gilles Chanteperdrix
  0 siblings, 2 replies; 12+ messages in thread
From: Victor Shulyak @ 2007-01-29 12:23 UTC (permalink / raw)
  To: rpm; +Cc: Xenomai help

Hello


> > > > However, since there seem to be a clean backtrace, maybe we could give a
> > > > try anyway. Could you objdump your kernel image, then locate the faulty
> > > > routine containing eip=0xc7b84d51?
I can apply objdump to kernel modules, but when this utility was applied
to kernel image, error message is displayed
objdump: /boot/vmlinuz-xenomai: File format not recognized
How could I objdump my kernel image?


> > > Let's suppose we can believe in sanity of the call trace, then would
> > > you, Victor, provide a disassembled code for
> > > __ipipe_handle_exception() ?
> > >
I will do this with pleasure, one thing to know, which tools can help
me?


> > --- arch/i386/kernel/entry.S~	2006-12-16 13:32:29.000000000 +0100
> > +++ arch/i386/kernel/entry.S	2007-01-26 23:44:59.000000000 +0100
> > @@ -1032,7 +1032,7 @@
> >  	RING0_INT_FRAME
> >  	pushl $0			# no error code
> >  	CFI_ADJUST_CFA_OFFSET 4
> > -	pushl $do_divide_error
> > +	PUSH_XVEC(do_divide_error)
> 
> s,PUSH_XVEC,PUSH_XCODE,
> 
> >  	CFI_ADJUST_CFA_OFFSET 4
> >  	jmp error_code
> >  	CFI_ENDPROC

I did so.


Thanks, Victor


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-29 12:23         ` Victor Shulyak
@ 2007-01-29 14:21           ` Jan Kiszka
  2007-01-29 15:21           ` Gilles Chanteperdrix
  1 sibling, 0 replies; 12+ messages in thread
From: Jan Kiszka @ 2007-01-29 14:21 UTC (permalink / raw)
  To: Victor Shulyak; +Cc: Xenomai help

[-- Attachment #1: Type: text/plain, Size: 658 bytes --]

Victor Shulyak wrote:
>>> --- arch/i386/kernel/entry.S~	2006-12-16 13:32:29.000000000 +0100
>>> +++ arch/i386/kernel/entry.S	2007-01-26 23:44:59.000000000 +0100
>>> @@ -1032,7 +1032,7 @@
>>>  	RING0_INT_FRAME
>>>  	pushl $0			# no error code
>>>  	CFI_ADJUST_CFA_OFFSET 4
>>> -	pushl $do_divide_error
>>> +	PUSH_XVEC(do_divide_error)
>> s,PUSH_XVEC,PUSH_XCODE,
>>
>>>  	CFI_ADJUST_CFA_OFFSET 4
>>>  	jmp error_code
>>>  	CFI_ENDPROC
> 
> I did so.
> 

And did this fix your problem?

It seems that applying this change solved occasional early lockups of
2.6.19.2-1.6-0x on my laptop ("occasional" - so I'm still observing...).

Jan


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 250 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-29 12:23         ` Victor Shulyak
  2007-01-29 14:21           ` Jan Kiszka
@ 2007-01-29 15:21           ` Gilles Chanteperdrix
  1 sibling, 0 replies; 12+ messages in thread
From: Gilles Chanteperdrix @ 2007-01-29 15:21 UTC (permalink / raw)
  To: Victor Shulyak; +Cc: Xenomai help

Victor Shulyak wrote:
> Hello
> 
> 
> 
>>>>>However, since there seem to be a clean backtrace, maybe we could give a
>>>>>try anyway. Could you objdump your kernel image, then locate the faulty
>>>>>routine containing eip=0xc7b84d51?
> 
> I can apply objdump to kernel modules, but when this utility was applied
> to kernel image, error message is displayed
> objdump: /boot/vmlinuz-xenomai: File format not recognized
> How could I objdump my kernel image?

Instead of vmlinuz, you should pick vmlinux at the root of the kernel
build directory.

> 
> 
> 
>>>>Let's suppose we can believe in sanity of the call trace, then would
>>>>you, Victor, provide a disassembled code for
>>>>__ipipe_handle_exception() ?
>>>>
> 
> I will do this with pleasure, one thing to know, which tools can help
> me?

objdump as well

-- 
                                                 Gilles Chanteperdrix


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-26 18:46   ` Dmitry Adamushko
  2007-01-26 22:46     ` Philippe Gerum
@ 2007-01-29 16:17     ` Victor Shulyak
  2007-01-29 16:32       ` Dmitry Adamushko
  2007-01-29 16:39       ` Gilles Chanteperdrix
  1 sibling, 2 replies; 12+ messages in thread
From: Victor Shulyak @ 2007-01-29 16:17 UTC (permalink / raw)
  To: Dmitry Adamushko; +Cc: Xenomai help

[-- Attachment #1: Type: text/plain, Size: 930 bytes --]

Hello

> Let's suppose we can believe in sanity of the call trace, then would
> you, Victor, provide a disassembled code for
> __ipipe_handle_exception() ?
> 
> Call Trace:
>  [<c0112566>] __ipipe_handle_exception+0x58/0x11e
>  [<c01050f4>] do_divide_error+0x0/0xb1
>  [<c0309202>] error_code+0x3e/0x4c
> 
> 
> Memory: 384496k/393152k available (2088k kernel code, 8108k reserved,
> 633k data, 180k init, 0k highmem)
> virtual kernel memory layout:
>     fixmap  : 0xfffb7000 - 0xfffff000   ( 288 kB)
>     vmalloc : 0xd8800000 - 0xfffb5000   ( 631 MB)
>     lowmem  : 0xc0000000 - 0xd7ff0000   ( 383 MB)
>    .init : 0xc03ac000 - 0xc03d9000   ( 180 kB)
>    .data : 0xc030a212 - 0xc03a88f4   ( 633 kB)
>    .text : 0xc0100000 - 0xc030a212   (2088 kB)

Attached file contains objdump -D of my kernel image with
__ipipe_handle_exception function.


How could I locate the faulty routine containing eip=0xc7b84d51?


Thanks, Victor

[-- Attachment #2: disassembled.bz2 --]
[-- Type: application/x-bzip, Size: 1979 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-29 16:17     ` Victor Shulyak
@ 2007-01-29 16:32       ` Dmitry Adamushko
  2007-01-30 11:20         ` Victor Shulyak
  2007-01-29 16:39       ` Gilles Chanteperdrix
  1 sibling, 1 reply; 12+ messages in thread
From: Dmitry Adamushko @ 2007-01-29 16:32 UTC (permalink / raw)
  To: Victor Shulyak; +Cc: Xenomai help

Victor,

Philippe suggested the following patch. Have you applied it /
recompiled / installed a new kernel ? So, please, give us a yes/no
answer on whether it helps to solve the problem.


--- arch/i386/kernel/entry.S~   2006-12-16 13:32:29.000000000 +0100
+++ arch/i386/kernel/entry.S    2007-01-26 23:44:59.000000000 +0100
@@ -1032,7 +1032,7 @@
       RING0_INT_FRAME
       pushl $0                        # no error code
       CFI_ADJUST_CFA_OFFSET 4
-       pushl $do_divide_error
+       PUSH_XCODE(do_divide_error)
       CFI_ADJUST_CFA_OFFSET 4
       jmp error_code
       CFI_ENDPROC


-- 
Best regards,
Dmitry Adamushko


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-29 16:17     ` Victor Shulyak
  2007-01-29 16:32       ` Dmitry Adamushko
@ 2007-01-29 16:39       ` Gilles Chanteperdrix
  1 sibling, 0 replies; 12+ messages in thread
From: Gilles Chanteperdrix @ 2007-01-29 16:39 UTC (permalink / raw)
  To: Victor Shulyak; +Cc: Xenomai help

Victor Shulyak wrote:
> Attached file contains objdump -D of my kernel image with
> __ipipe_handle_exception function.
> 
> 
> How could I locate the faulty routine containing eip=0xc7b84d51?

It is probably the address of a module, so getting the disassembly is a
little bit more complicated: you have to look into /proc/modules for the
load address of the modules. Then pass it to the --adjust-vma option of
objdump.

But you should try Philippe's patch first.

-- 
                                                 Gilles Chanteperdrix


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Xenomai-help] BUG: unable to handle kernel paging request
  2007-01-29 16:32       ` Dmitry Adamushko
@ 2007-01-30 11:20         ` Victor Shulyak
  0 siblings, 0 replies; 12+ messages in thread
From: Victor Shulyak @ 2007-01-30 11:20 UTC (permalink / raw)
  To: Dmitry Adamushko; +Cc: Xenomai help

Hello

> Philippe suggested the following patch. Have you applied it /
> recompiled / installed a new kernel ? So, please, give us a yes/no
> answer on whether it helps to solve the problem.

I have applied the patch. If the problem happens again I will post a
message.

Thanks, Victor


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2007-01-30 11:20 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-26 11:46 [Xenomai-help] BUG: unable to handle kernel paging request Victor Shulyak
2007-01-26 16:07 ` Philippe Gerum
2007-01-26 18:46   ` Dmitry Adamushko
2007-01-26 22:46     ` Philippe Gerum
2007-01-26 23:01       ` Philippe Gerum
2007-01-29 12:23         ` Victor Shulyak
2007-01-29 14:21           ` Jan Kiszka
2007-01-29 15:21           ` Gilles Chanteperdrix
2007-01-29 16:17     ` Victor Shulyak
2007-01-29 16:32       ` Dmitry Adamushko
2007-01-30 11:20         ` Victor Shulyak
2007-01-29 16:39       ` Gilles Chanteperdrix

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.