Re: [PATCH 1/1] perf,tools: add time out to force stop endless mmap processing

From: David Ahern
Date: Fri Jun 12 2015 - 16:52:43 EST


On 6/12/15 2:39 PM, Liang, Kan wrote:
Here are the test results.
Please note that I get "synthesized threads took..." after the test case exit.
It means both way have the same issue.

Got it. So what you really mean is launching perf on an already running process perf never finishes initializing. There are several types of problems like this. For example on a sparc system with a 1024 cpus if I launch perf (top or record) after starting a kernel build with make -j 1024 the build finishes before perf starts collecting samples. ie., it never finishes walking /proc until the build is complete. task_diag does not solve that problem either and in general the procps tools can't handle it either (ps or top for example).

For your test case what happens if you run:
perf record -- test-app

Is perf overloaded with mmap samples? does it keep up or do you have to jack the mmap size (-m arg)?


[perf]$ sudo ./perf record -a -- usleep 1
synthesized threads took 278.780762 sec
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.617 MB perf.data (7974 samples) ]

[perf]$ sudo ./perf record -a --no-task_diag -- usleep 1
synthesized threads took 315.612403 sec
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.443 MB perf.data (2754 samples) ]


ok.

Thanks,
David

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/