On Wed, 2008-05-07 at 18:54 +0200, Jochen Roth wrote: > Carl, > > I applied your patch on Jeremy's latest kernel.org spufs tree. > > > +void oprofile_add_value(unsigned long value, int cpu) { > > + struct oprofile_cpu_buffer * cpu_buf = &cpu_buffer[cpu]; > > Shouldn't it be > struct oprofile_cpu_buffer *cpu_buf = &per_cpu(cpu_buffer, cpu);
No, I don't think so. Take a look at the other functions in drivers/oprofile/cpu_buffer.c. For example oprofile_add_trace(). You will see that the cpu_buffer is not accessed using the per_cpu construct. Not sure why the compiler would complain about the oprofile_add_value() function but not one of the other functions like oprofile_add_trace(). What was the compiler error that you saw? I will try getting Jeremy's kernel and applying the patch there to see if it works. > > At least my compiler complained about that. > > I booted a kernel with your patches applied and the system locked up > anyway: > > 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 > _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev