Thread (1 message) 1 message, 1 author, 2008-05-08

Re: [Cbe-oss-dev] [PATCH] Updated: Reworked Cell OProfile: SPU mutex lock fix

From: Carl Love <hidden>
Date: 2008-05-08 20:49:44
Also in: lkml

On Thu, 2008-05-08 at 09:48 +0200, Jochen Roth wrote:
quoted
quoted
Unable to handle kernel paging request for data at address 
0xd0000000004fe9a8
Faulting instruction address: 0xd000000000330ad8
cpu 0x0: Vector: 300 (Data Access) at [c00000003c337680]
     pc: d000000000330ad8: .alloc_cpu_buffers+0x7c/0x12c [oprofile]
     lr: d000000000330abc: .alloc_cpu_buffers+0x60/0x12c [oprofile]
     sp: c00000003c337900
    msr: 9000000000009032
    dar: d0000000004fe9a8
  dsisr: 42000000
   current = 0xc00000003e128600
   paca    = 0xc0000000005b3480
     pid   = 2356, comm = oprofiled
enter ? for help
[c00000003c3379a0] d0000000003302ac .oprofile_setup+0x2c/0x134 [oprofile]
[c00000003c337a30] d00000000033176c .event_buffer_open+0x7c/0xc8 [oprofile]
[c00000003c337ac0] c0000000000d6ca8 .__dentry_open+0x190/0x308
[c00000003c337b70] c0000000000e7a5c .do_filp_open+0x3c4/0x8e8
[c00000003c337d00] c0000000000d6a1c .do_sys_open+0x80/0x14c
[c00000003c337db0] c0000000001192f4 .compat_sys_open+0x24/0x38
[c00000003c337e30] c0000000000076b4 syscall_exit+0x0/0x40
--- Exception: c01 (System Call) at 000000000ff006f8
SP (ffc6f6a0) is in userspace
Btw, I get this crash even without the patch applied. So it might be 
something unrelated. Shall I open a separate bugzilla for that?
quoted
A couple of things, first I am not finding a 2.6.25 Jeremy tree that you
refer to.  The best that I see is a 2.6.23 tree at
git://git.kernel.org/pub/scm/linux/kernel/git/jermey/xen.git.  Can you
either send me a location to get the jeremy tree you used or
tar/compress it an email it to me.  A link would be preferred.  
I pulled down the jeremy tree.  I tried compiling and booting it.  It
also crashes for me without my patch. The tree is clearly bad.

I looked at the jeremy tree.  The oprofile code is different then the
Arnd tree.  My patch is consistent with the code in Arnd's tree.  The
oprofile cpu_buffer has been changed in the Jeremy tree from what is in
Arnd's tree.

It is my understanding that Arnd is the official CELL kernel maintainer.
I have no idea where the jeremy tree comes from.  My patch was done
against the latest Arnd tree.  I would recommend you use Arnd's tree.
Let me know if you find any issues with my patch with Arnd's tree.
git://git.kernel.org/pub/scm/linux/kernel/git/jk/spufs.git
quoted
I use Arnd's git tree at
git://git.kernel.org/pub/scm/linux/kernel/git/arnd/cell-2.6.git
I'll clone Arnd's git and apply your patch.
quoted
The second thing is the function that you changed is used when adding a
sample to the CPU buffer.  It is only called when OProfile is running.
The crash that you sent above looks like it occurred when the module was
loading since it failed in the alloc_cpu_buffer call.  This would appear
to me to be completely separate from the oprofile_add_value() function.
The patch does make some changes in the oprofile arch specific sync init
code.  Perhaps something is failing as part of the sync start
(drivers/oprofile/oprof.c) and resulting in the crash.  There are no
buffer creation specific changes in the patch so I am puzzled by the
crash.  I would like to see if I can reproduce the crash on my system.
I have a qs20.  What are you running on?
Thanks for the explanation. It also crashed before applying your patch.
I'm using a QS21.

--
Kind regards,
Jochen
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help