Hi,
I'm using oprofile on an smp system running 2.6.15.6
kernel.
opreport fails with the error :
opreport error: No sample file found: try running
opcontrol --dump
or specify a session containing sample files
And opcontrol --dump also does not show anything. The
directory /var/lib/oprofile/samples/current is empty.
I further tried to run in the timer interrupt mode with
the setting oprofile.timer=1 in the boot cmd line, but
there is no change.
/dev/oprofile/stats # cat sample_lost_no_mapping
46386
/dev/oprofile/stats # cat sample_lost_no_mm
592
/dev/oprofile/stats # cat event_lost_overflow
26725079
napa:/dev/oprofile/stats # cat ~/.oprofile/daemonrc
NR_CHOSEN=0
SEPARATE_LIB=0
SEPARATE_KERNEL=0
SEPARATE_THREAD=0
SEPARATE_CPU=0
VMLINUX=/usr/src/linux-2.6.15.6/vmlinux
CPU_BUF_SIZE=30000
CALLGRAPH=0
Appreciate your help.
Thanks,
nmalh
Logged In: YES
user_id=1542829
I have been trying to run Oprofile on PMC-Sierra's Sequoia
Board and I have the same problem. No matter what I do, I am
unable to get any sample file generated.
Additionally I also had problems trying to get the Oprofile
run as a daemon.
Any ideas what is going on?
Logged In: YES
user_id=302662
Originator: NO
Same problem for me with a 2.6.19.1 kernel on amd64, oprofile 0.9.2
this error with opcontrol :
neutrino ~ # opcontrol --start
Using default event: CPU_CLK_UNHALTED:100000:0:1:1
/usr/bin/opcontrol: line 994: /dev/oprofile/0/enabled: Aucun fichier ou répertoire de ce type
/usr/bin/opcontrol: line 994: /dev/oprofile/0/event: Aucun fichier ou répertoire de ce type
/usr/bin/opcontrol: line 994: /dev/oprofile/0/count: Aucun fichier ou répertoire de ce type
/usr/bin/opcontrol: line 994: /dev/oprofile/0/kernel: Aucun fichier ou répertoire de ce type
/usr/bin/opcontrol: line 994: /dev/oprofile/0/user: Aucun fichier ou répertoire de ce type
/usr/bin/opcontrol: line 994: /dev/oprofile/0/unit_mask: Aucun fichier ou répertoire de ce type
Using 2.6+ OProfile kernel interface.
Using log file /var/lib/oprofile/oprofiled.log
Daemon started.
Profiler running.
neutrino ~ # ls /dev/oprofile/
1 backtrace_depth buffer_watershed dump stats
2 buffer cpu_buffer_size enable
3 buffer_size cpu_type pointer_size
The "0" profile don't exist but 1, 2 and 3 yes ...
What's wrong with oprofile ?
Logged In: YES
user_id=1708098
Originator: NO
Can someone PLEASE fix this bug? I haven't been able to profile for months.
Logged In: YES
user_id=318973
Originator: NO
arabidopsis, don't use CONFIG_SOFT_WATCHDOG or compile it as module and don't load it. I'm unsure if compiled in soft watchdog and passing
nmi_wathcdog=0 is sufficient.
Logged In: YES
user_id=318973
Originator: NO
additional information, for those getting:
/usr/bin/opcontrol: line 994: /dev/oprofile/0/enabled
If you use a guy to start oprofile it's possible this error
become silent and you end up with no samples files w/o any
error message. This error on x86 is typical of the nmi watchdog
using some resource needed by oprofile. Things changed in
recent kernel and in 2.6.20, perhaps 2.6.19 too,
CONFIG_WATCHDOG=n no longer disable the nmi watchdog, nowadays
the right way to disable it is:
echo 0 > /proc/sys/kernel/nmi_watchdog
opcontrol --deinit
The deinit is needed to deallocate resource used by
oprofile, at the next start resource will be properly
allocated.
I agree, someone really needs to fix this and soon. Disabling the NMI watchdog is a really horrible workaround and discovering you have no sample data after a long profiler run is extremely frustrating.
This should be possible to fix by passing the OP_COUNTERS from opcontrol to ophelp. Then, in ophelp's resolve_events(), check to see if map_event_to_counter() returns a counter_map that includes a counter that is NOT in OP_COUNTERS. If so, then you need to devise a way to re-map to a different counter. If anyone in the community has time to develop a patch, I'll be happy to review it.
Closing this bug as "Wont Fix" since it's been around forever with no patch contributions to fix it. Also, as we now have 'operf' as the recommended profiling method (instead of opcontrol), this error cannot occur since both operf and the nmi watchdog use perf_events and can, therefore, play nicely together.