Re: [PATCH] perf, tools: Stop perf stat -p when profiled process exits

From: Namhyung Kim
Date: Wed Sep 12 2012 - 04:38:32 EST


Hi Andi,

On Tue, 11 Sep 2012 23:09:04 -0700, Andi Kleen wrote:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> When counting a process with perf stat -p check if the process died
> and exit collection if yes.

I guess we need something similar for perf record as well.

>
> Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> ---
> tools/perf/builtin-stat.c | 9 ++++++++-
> 1 files changed, 8 insertions(+), 1 deletions(-)
>
> diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> index 861f0ae..1313bb5 100644
> --- a/tools/perf/builtin-stat.c
> +++ b/tools/perf/builtin-stat.c
> @@ -536,7 +536,14 @@ static int run_perf_stat(int argc __used, const char **argv)
> if (WIFSIGNALED(status))
> psignal(WTERMSIG(status), argv[0]);
> } else {
> - while(!done) sleep(1);
> + char piddir[40];
> + snprintf(piddir, sizeof piddir, "/proc/%d", atoi(target.pid));
> +
> + while(!done) {
> + sleep(1);
> + if (target.pid && access(piddir, X_OK) < 0 && errno == ENOENT)
> + break;

The target.pid might have multiple pid's - e.g. perf stat -p 1234,5678

Thanks,
Namhyung
--
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/