perf tools: Use readdir() instead of deprecated readdir_r()
authorArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 8 Apr 2016 14:53:02 +0000 (11:53 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 12 May 2016 14:26:58 +0000 (11:26 -0300)
commit22a9f41b555673e7499b97acf3ffb07bf0af31ad
treed15ff34cc873566d170aa845b178d612376c3d2f
parent7839b9f32e45075d9eb48da8480faef3dbd019f0
perf tools: Use readdir() instead of deprecated readdir_r()

The readdir() function is thread safe as long as just one thread uses a
DIR, which is the case when parsing tracepoint event definitions, to
avoid breaking the build with glibc-2.23.90 (upcoming 2.24), use it
instead of readdir_r().

See: http://man7.org/linux/man-pages/man3/readdir.3.html

"However, in modern implementations (including the glibc implementation),
concurrent calls to readdir() that specify different directory streams
are thread-safe.  In cases where multiple threads must read from the
same directory stream, using readdir() with external synchronization is
still preferable to the use of the deprecated readdir_r(3) function."

Noticed while building on a Fedora Rawhide docker container.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-wddn49r6bz6wq4ee3dxbl7lo@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/parse-events.c