linux_dsm_epyc7002/tools/perf
Arnaldo Carvalho de Melo bef0b8970f perf probe: Fix unchecked usage of strncpy()
The strncpy() function may leave the destination string buffer
unterminated, better use strlcpy() that we have a __weak fallback
implementation for systems without it.

In this case the 'target' buffer is coming from a list of build-ids that
are expected to have a len of at most (SBUILD_ID_SIZE - 1) chars, so
probably we're safe, but since we're using strncpy() here, use strlcpy()
instead to provide the intended safety checking without the using the
problematic strncpy() function.

This fixes this warning on an Alpine Linux Edge system with gcc 8.2:

  util/probe-file.c: In function 'probe_cache__open.isra.5':
  util/probe-file.c:427:3: error: 'strncpy' specified bound 41 equals destination size [-Werror=stringop-truncation]
     strncpy(sbuildid, target, SBUILD_ID_SIZE);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  cc1: all warnings being treated as errors

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Fixes: 1f3736c9c8 ("perf probe: Show all cached probes")
Link: https://lkml.kernel.org/n/tip-l7n8ggc9kl38qtdlouke5yp5@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2018-12-17 14:59:28 -03:00
..
arch perf tools: Fix diverse comment typos 2018-12-17 14:56:47 -03:00
bench perf bench: Add epoll_ctl(2) benchmark 2018-11-21 22:39:55 -03:00
Documentation perf tools: Support 'srccode' output 2018-12-17 14:57:07 -03:00
examples/bpf Revert "perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter" 2018-11-21 12:00:31 -03:00
include/bpf perf bpf: Reduce the hardcoded .max_entries for pid_maps 2018-11-21 12:00:32 -03:00
jvmti perf jvmti: Separate jvmti cmlr check 2018-11-21 22:39:58 -03:00
pmu-events perf vendor events intel: Fix diverse typos 2018-12-17 14:56:31 -03:00
python
scripts perf scripts python: exported-sql-viewer.py: Fix table find when table re-ordered 2018-11-05 14:53:00 -03:00
tests perf tools: Allow specifying proc-map-timeout in config file 2018-12-17 14:56:57 -03:00
trace perf beauty mmap_flags: Fixed syntax error Fixed missing ']' error 2018-12-17 14:56:13 -03:00
ui perf ui helpline: Use strlcpy() as a shorter form of strncpy() + explicit set nul 2018-12-17 14:59:23 -03:00
util perf probe: Fix unchecked usage of strncpy() 2018-12-17 14:59:28 -03:00
.gitignore
Build
builtin-annotate.c perf tools: Remove perf_tool from event_op2 2018-09-19 10:25:10 -03:00
builtin-bench.c perf bench: Add epoll_ctl(2) benchmark 2018-11-21 22:39:55 -03:00
builtin-buildid-cache.c
builtin-buildid-list.c
builtin-c2c.c perf c2c report: Fix crash for empty browser 2018-07-31 10:53:20 -03:00
builtin-config.c
builtin-data.c
builtin-diff.c perf hists: Clarify callchain disabling when available 2018-07-24 14:37:33 -03:00
builtin-evlist.c
builtin-ftrace.c
builtin-help.c perf help: Remove needless use of strncpy() 2018-12-17 14:59:18 -03:00
builtin-inject.c perf tools: Report itrace options in help 2018-09-19 15:06:59 -03:00
builtin-kallsyms.c
builtin-kmem.c tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum tep_flag' 2018-08-13 15:22:18 -03:00
builtin-kvm.c perf tools: Allow specifying proc-map-timeout in config file 2018-12-17 14:56:57 -03:00
builtin-list.c
builtin-lock.c
builtin-mem.c
builtin-probe.c
builtin-record.c perf tools: Allow specifying proc-map-timeout in config file 2018-12-17 14:56:57 -03:00
builtin-report.c perf report: Display average IPC and IPC coverage per symbol 2018-12-17 14:55:44 -03:00
builtin-sched.c
builtin-script.c perf tools: Support 'srccode' output 2018-12-17 14:57:07 -03:00
builtin-stat.c perf evlist: Move perf_evsel__reset_weak_group into evlist 2018-11-05 14:37:09 -03:00
builtin-timechart.c
builtin-top.c perf top: Move perf_top__reset_sample_counters() to after counts display 2018-12-17 14:58:47 -03:00
builtin-trace.c perf trace: We need to consider "nr" if "__syscall_nr" is not there 2018-12-17 14:57:02 -03:00
builtin-version.c
builtin.h
check-headers.sh tools include uapi: Grab a copy of linux/fs.h 2018-10-30 11:46:22 -03:00
command-list.txt perf help: Add missing subcommand version 2018-09-19 14:53:36 -03:00
CREDITS
design.txt
Makefile perf tools: Disable parallelism for 'make clean' 2018-08-20 08:54:58 -03:00
Makefile.config tools build feature: Check if libaio is available 2018-12-17 14:54:54 -03:00
Makefile.perf perf beauty mmap_flags: Check if the arch has a mmap.h file 2018-12-17 14:55:14 -03:00
MANIFEST
perf-archive.sh
perf-completion.sh
perf-read-vdso.c
perf-sys.h
perf-with-kcore.sh
perf.c
perf.h perf tools: Allow specifying proc-map-timeout in config file 2018-12-17 14:56:57 -03:00