https://github.com/torvalds/linux
Revision 2515e614834f362eed36fb5ea5d359d94a525263 authored by Arnaldo Carvalho de Melo on 08 April 2016, 14:32:15 UTC, committed by Arnaldo Carvalho de Melo on 12 May 2016, 13:22:54 UTC
The readdir() function is thread safe as long as just one thread uses a DIR, which is the case when synthesizing events for pre-existing threads by traversing /proc, so, 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 /tmp/build/perf/util/event.o util/event.c: In function '__event__synthesize_thread': util/event.c:466:2: error: 'readdir_r' is deprecated [-Werror=deprecated-declarations] while (!readdir_r(tasks, &dirent, &next) && next) { ^~~~~ In file included from /usr/include/features.h:368:0, from /usr/include/stdint.h:25, from /usr/lib/gcc/x86_64-redhat-linux/6.0.0/include/stdint.h:9, from /git/linux/tools/include/linux/types.h:6, from util/event.c:1: /usr/include/dirent.h:189:12: note: declared here 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-i1vj7nyjp2p750rirxgrfd3c@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
1 parent 9f448cd
Tip revision: 2515e614834f362eed36fb5ea5d359d94a525263 authored by Arnaldo Carvalho de Melo on 08 April 2016, 14:32:15 UTC
perf tools: Use readdir() instead of deprecated readdir_r()
perf tools: Use readdir() instead of deprecated readdir_r()
Tip revision: 2515e61
File | Mode | Size |
---|---|---|
Atmel | ||
Marvell | ||
OMAP | ||
SA1100 | ||
SH-Mobile | ||
SPEAr | ||
Samsung | ||
Samsung-S3C24XX | ||
VFP | ||
keystone | ||
nwfpe | ||
pxa | ||
sti | ||
stm32 | ||
sunxi | ||
00-INDEX | -rw-r--r-- | 1.4 KB |
Booting | -rw-r--r-- | 7.9 KB |
CCN.txt | -rw-r--r-- | 2.3 KB |
IXP4xx | -rw-r--r-- | 6.3 KB |
Interrupts | -rw-r--r-- | 6.6 KB |
Netwinder | -rw-r--r-- | 1.5 KB |
Porting | -rw-r--r-- | 4.4 KB |
README | -rw-r--r-- | 7.6 KB |
Setup | -rw-r--r-- | 3.5 KB |
cluster-pm-race-avoidance.txt | -rw-r--r-- | 16.2 KB |
firmware.txt | -rw-r--r-- | 2.2 KB |
kernel_mode_neon.txt | -rw-r--r-- | 5.6 KB |
kernel_user_helpers.txt | -rw-r--r-- | 6.6 KB |
mem_alignment | -rw-r--r-- | 2.4 KB |
memory.txt | -rw-r--r-- | 3.1 KB |
swp_emulation | -rw-r--r-- | 1.2 KB |
tcm.txt | -rw-r--r-- | 5.0 KB |
uefi.txt | -rw-r--r-- | 2.9 KB |
vlocks.txt | -rw-r--r-- | 6.6 KB |
Computing file changes ...