I have been trying to hunt down this bug for several days
now. What mainly happens is that when oprofiled wakes up from read() in
/dev/oprofile/buffer on receiving a signal USR1 (i.e, when someone does
opcontrol –start after doing opcontrol—start-daemon), it somehow
gets SIGBUS within glibc read(). We are using a mips machine with Sybyte
SB1 processor. On intel, this error does not show up. Interestingly, when I
tried running a small test program that simply reads /dev/oprofile/buffer, the
error can’t be reproduced!
Ralf and others, any insights, suggestions or useful
comments from experience will be really really appreciated. I am spending a lot
of time trying to fix this bug.