Messages in this thread | | | Subject | Re: [BUG] perf failed on multi-cpus system with multi-events specified | From | Eric Dumazet <> | Date | Wed, 02 Mar 2011 05:35:30 +0100 |
| |
Le mercredi 02 mars 2011 à 11:58 +0800, Han Pingtian a écrit : > Hi, > > On a Nehalem-EX system, which has 24 CPUs, perf commands with > multi-events specified fail: > > [root@intel-s3e36-01 perf]# ./perf record -e > syscalls:sys_enter_sched_get_priority_min -e kmem:mm_kernel_pagefault > -e workqueue:workqueue_execution -e writeback:writeback_pages_written > -e kmem:mm_kernel_pagefault -e writeback:writeback_bdi_unregister -e > syscalls:sys_exit_capset -e syscalls:sys_enter_sched_get_priority_min > -e writeback:writeback_exec -e syscalls:sys_enter_vmsplice -e > syscalls:sys_exit_mprotect -e block:block_rq_complete -e > syscalls:sys_enter_readlinkat -e signal:signal_overflow_fail -e > syscalls:sys_exit_sendfile64 -e block:block_bio_backmerge -e > syscalls:sys_exit_unlink -e syscalls:sys_exit_keyctl -e > jbd2:jbd2_submit_inode_data -e syscalls:sys_enter_tgkill -e > syscalls:sys_exit_lremovexattr -e syscalls:sys_exit_munmap -e > syscalls:sys_enter_mmap -e syscalls:sys_exit_sched_getparam -e > syscalls:sys_exit_getpgid -e syscalls:sys_exit_clock_getres -e > block:block_split -e ext4:ext4_mballoc_discard -e task-clock -e > syscalls:sys_enter_sendfile64 -e syscalls:sys_enter_ptrace -e > syscalls:sys_enter_nanosleep -e syscalls:sys_exit_setdomainname -e > writeback:writeback_nowork -e syscalls:sys_exit_mbind -e > ext4:ext4_da_write_begin -e syscalls:sys_enter_recvfrom -e > syscalls:sys_enter_write -e syscalls:sys_exit_getresgid -e > syscalls:sys_exit_fsync -e syscalls:sys_enter_rt_sigprocmask -e > syscalls:sys_enter_getdents -e syscalls:sys_exit_semtimedop -f ls > > Error: sys_perf_event_open() syscall returned with -1 (Too many open > files). /bin/dmesg may provide additional information. > > Fatal: No CONFIG_PERF_EVENTS=y kernel support configured? > > trace-cmd: Too many open files > No memory to alloc tracepoints list > [root@intel-s3e36-01 perf]# ./perf --version > perf version 2.6.38.rc6.166.g493f33 > [root@intel-s3e36-01 perf]# > > On another latop which has only two CPUs, there is no this problem.
perf needs nr_cpus * nr_events file descriptors
Try before :
ulimit -n 1000000
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |