Hi all,

There is a bug found in my work when running "perf record". The basic 
information
is here. As we know, perf record is a parent process and the programme traced is
a child process when running "perf record". Sometimes the child process become
zombie state and disappear until the parent process is killed. The bug stays in 
linux/
tools/perf/builtin-record.c.
*********************************************************************
static int __cmd_record(struct perf_record *rec, int argc, const char **argv)
    ......
        if (hits == rec->samples) {
                         if (done)
                                 break;
                         err = poll(evsel_list->pollfd, evsel_list->nr_fds, -1);
                         waking++;
                 }
    ......
*********************************************************************
The parent process still call the function
poll(evsel_list->pollfd, evsel_list->nr_fds, -1) when the child process has 
exited
already, which caused a zombie process.

May I have your opinion ?
Waiting for your reply!

Best Regards
Kaixu Xia

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

Reply via email to