Skip to contentSkip to conversation

tools: Adopt __scanf from kernel sources

tip:perf/core tip-bot for Arnaldo Carvalho de Melo 1 participant 1 message Jun 20, 2017 perf events

lore
Share & tools
lore
#0 lore raw
Commit-ID:  3ee350fb8a2b30fe47dd9e3b299dff0178fc8c88
Gitweb:     http://git.kernel.org/tip/3ee350fb8a2b30fe47dd9e3b299dff0178fc8c88
Author:     Arnaldo Carvalho de Melo <[email protected]>
AuthorDate: Fri, 16 Jun 2017 11:57:54 -0300
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Mon, 19 Jun 2017 15:27:05 -0300

tools: Adopt __scanf from kernel sources

To have a more compact way to ask the compiler to perform scanf like argument validation.

---
 tools/include/linux/compiler-gcc.h | 1 +
 tools/perf/util/pmu.h              | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)
tools/include/linux/compiler-gcc.h +1 -0
index f531b25..2846094 100644
@@ -23,3 +23,4 @@
 #define __noreturn	__attribute__((noreturn))
 
 #define __printf(a, b)	__attribute__((format(printf, a, b)))
+#define __scanf(a, b)	__attribute__((format(scanf, a, b)))
tools/perf/util/pmu.h +2 -2
index ea7f450..389e972 100644
@@ -2,6 +2,7 @@
 #define __PMU_H
 
 #include <linux/bitmap.h>
+#include <linux/compiler.h>
 #include <linux/perf_event.h>
 #include <stdbool.h>
 #include "evsel.h"
@@ -83,8 +84,7 @@ void print_pmu_events(const char *event_glob, bool name_only, bool quiet,
 		      bool long_desc, bool details_flag);
 bool pmu_have_event(const char *pname, const char *name);
 
-int perf_pmu__scan_file(struct perf_pmu *pmu, const char *name, const char *fmt,
-			...) __attribute__((format(scanf, 3, 4)));
+int perf_pmu__scan_file(struct perf_pmu *pmu, const char *name, const char *fmt, ...) __scanf(3, 4);
 
 int perf_pmu__test(void);