mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@infradead.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	Adrian Hunter <adrian.hunter@intel.com>,
	David Ahern <dsahern@gmail.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Jiri Olsa <jolsa@redhat.com>, Mike Galbraith <efault@gmx.de>,
	Paul Mackerras <paulus@samba.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Stephane Eranian <eranian@google.com>
Subject: [PATCH 054/161] perf trace: Put syscall formatter parms into struct
Date: Mon, 14 Oct 2013 17:00:43 -0300	[thread overview]
Message-ID: <1381780950-25642-55-git-send-email-acme@infradead.org> (raw)
In-Reply-To: <1381780950-25642-1-git-send-email-acme@infradead.org>

From: Arnaldo Carvalho de Melo <acme@redhat.com>

So that we can add more state to formatters without having to modify
all of them.

Example is to pass a table to a generic string formatter, like for
setitimer 'which' arg.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-zyi2esmas5wfrxznh0x0fkiz@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-trace.c | 96 +++++++++++++++++++++++-----------------------
 1 file changed, 48 insertions(+), 48 deletions(-)

diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index 71aa3e35406b..939426c7dbde 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -33,22 +33,24 @@
 # define MADV_UNMERGEABLE	13
 #endif
 
+struct syscall_arg {
+	unsigned long val;
+	u8	      idx;
+	u8	      mask;
+};
+
 static size_t syscall_arg__scnprintf_hex(char *bf, size_t size,
-					 unsigned long arg,
-					 u8 arg_idx __maybe_unused,
-					 u8 *arg_mask __maybe_unused)
+					 struct syscall_arg *arg)
 {
-	return scnprintf(bf, size, "%#lx", arg);
+	return scnprintf(bf, size, "%#lx", arg->val);
 }
 
 #define SCA_HEX syscall_arg__scnprintf_hex
 
 static size_t syscall_arg__scnprintf_whence(char *bf, size_t size,
-					    unsigned long arg,
-					    u8 arg_idx __maybe_unused,
-					    u8 *arg_mask __maybe_unused)
+					    struct syscall_arg *arg)
 {
-	int whence = arg;
+	int whence = arg->val;
 
 	switch (whence) {
 #define P_WHENCE(n) case SEEK_##n: return scnprintf(bf, size, #n)
@@ -71,11 +73,9 @@ static size_t syscall_arg__scnprintf_whence(char *bf, size_t size,
 #define SCA_WHENCE syscall_arg__scnprintf_whence
 
 static size_t syscall_arg__scnprintf_mmap_prot(char *bf, size_t size,
-					       unsigned long arg,
-					       u8 arg_idx __maybe_unused,
-					       u8 *arg_mask __maybe_unused)
+					       struct syscall_arg *arg)
 {
-	int printed = 0, prot = arg;
+	int printed = 0, prot = arg->val;
 
 	if (prot == PROT_NONE)
 		return scnprintf(bf, size, "NONE");
@@ -104,10 +104,9 @@ static size_t syscall_arg__scnprintf_mmap_prot(char *bf, size_t size,
 #define SCA_MMAP_PROT syscall_arg__scnprintf_mmap_prot
 
 static size_t syscall_arg__scnprintf_mmap_flags(char *bf, size_t size,
-						unsigned long arg, u8 arg_idx __maybe_unused,
-						u8 *arg_mask __maybe_unused)
+						struct syscall_arg *arg)
 {
-	int printed = 0, flags = arg;
+	int printed = 0, flags = arg->val;
 
 #define	P_MMAP_FLAG(n) \
 	if (flags & MAP_##n) { \
@@ -148,10 +147,9 @@ static size_t syscall_arg__scnprintf_mmap_flags(char *bf, size_t size,
 #define SCA_MMAP_FLAGS syscall_arg__scnprintf_mmap_flags
 
 static size_t syscall_arg__scnprintf_madvise_behavior(char *bf, size_t size,
-						      unsigned long arg, u8 arg_idx __maybe_unused,
-						      u8 *arg_mask __maybe_unused)
+						      struct syscall_arg *arg)
 {
-	int behavior = arg;
+	int behavior = arg->val;
 
 	switch (behavior) {
 #define	P_MADV_BHV(n) case MADV_##n: return scnprintf(bf, size, #n)
@@ -190,8 +188,7 @@ static size_t syscall_arg__scnprintf_madvise_behavior(char *bf, size_t size,
 
 #define SCA_MADV_BHV syscall_arg__scnprintf_madvise_behavior
 
-static size_t syscall_arg__scnprintf_futex_op(char *bf, size_t size, unsigned long arg,
-					      u8 arg_idx __maybe_unused, u8 *arg_mask)
+static size_t syscall_arg__scnprintf_futex_op(char *bf, size_t size, struct syscall_arg *arg)
 {
 	enum syscall_futex_args {
 		SCF_UADDR   = (1 << 0),
@@ -201,24 +198,24 @@ static size_t syscall_arg__scnprintf_futex_op(char *bf, size_t size, unsigned lo
 		SCF_UADDR2  = (1 << 4),
 		SCF_VAL3    = (1 << 5),
 	};
-	int op = arg;
+	int op = arg->val;
 	int cmd = op & FUTEX_CMD_MASK;
 	size_t printed = 0;
 
 	switch (cmd) {
 #define	P_FUTEX_OP(n) case FUTEX_##n: printed = scnprintf(bf, size, #n);
-	P_FUTEX_OP(WAIT);	    *arg_mask |= SCF_VAL3|SCF_UADDR2;		  break;
-	P_FUTEX_OP(WAKE);	    *arg_mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
-	P_FUTEX_OP(FD);		    *arg_mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
-	P_FUTEX_OP(REQUEUE);	    *arg_mask |= SCF_VAL3|SCF_TIMEOUT;	          break;
-	P_FUTEX_OP(CMP_REQUEUE);    *arg_mask |= SCF_TIMEOUT;			  break;
-	P_FUTEX_OP(CMP_REQUEUE_PI); *arg_mask |= SCF_TIMEOUT;			  break;
+	P_FUTEX_OP(WAIT);	    arg->mask |= SCF_VAL3|SCF_UADDR2;		  break;
+	P_FUTEX_OP(WAKE);	    arg->mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
+	P_FUTEX_OP(FD);		    arg->mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
+	P_FUTEX_OP(REQUEUE);	    arg->mask |= SCF_VAL3|SCF_TIMEOUT;	          break;
+	P_FUTEX_OP(CMP_REQUEUE);    arg->mask |= SCF_TIMEOUT;			  break;
+	P_FUTEX_OP(CMP_REQUEUE_PI); arg->mask |= SCF_TIMEOUT;			  break;
 	P_FUTEX_OP(WAKE_OP);							  break;
-	P_FUTEX_OP(LOCK_PI);	    *arg_mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
-	P_FUTEX_OP(UNLOCK_PI);	    *arg_mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
-	P_FUTEX_OP(TRYLOCK_PI);	    *arg_mask |= SCF_VAL3|SCF_UADDR2;		  break;
-	P_FUTEX_OP(WAIT_BITSET);    *arg_mask |= SCF_UADDR2;			  break;
-	P_FUTEX_OP(WAKE_BITSET);    *arg_mask |= SCF_UADDR2;			  break;
+	P_FUTEX_OP(LOCK_PI);	    arg->mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
+	P_FUTEX_OP(UNLOCK_PI);	    arg->mask |= SCF_VAL3|SCF_UADDR2|SCF_TIMEOUT; break;
+	P_FUTEX_OP(TRYLOCK_PI);	    arg->mask |= SCF_VAL3|SCF_UADDR2;		  break;
+	P_FUTEX_OP(WAIT_BITSET);    arg->mask |= SCF_UADDR2;			  break;
+	P_FUTEX_OP(WAKE_BITSET);    arg->mask |= SCF_UADDR2;			  break;
 	P_FUTEX_OP(WAIT_REQUEUE_PI);						  break;
 	default: printed = scnprintf(bf, size, "%#x", cmd);			  break;
 	}
@@ -235,13 +232,12 @@ static size_t syscall_arg__scnprintf_futex_op(char *bf, size_t size, unsigned lo
 #define SCA_FUTEX_OP  syscall_arg__scnprintf_futex_op
 
 static size_t syscall_arg__scnprintf_open_flags(char *bf, size_t size,
-					       unsigned long arg,
-					       u8 arg_idx, u8 *arg_mask)
+					       struct syscall_arg *arg)
 {
-	int printed = 0, flags = arg;
+	int printed = 0, flags = arg->val;
 
 	if (!(flags & O_CREAT))
-		*arg_mask |= 1 << (arg_idx + 1); /* Mask the mode parm */
+		arg->mask |= 1 << (arg->idx + 1); /* Mask the mode parm */
 
 	if (flags == 0)
 		return scnprintf(bf, size, "RDONLY");
@@ -294,7 +290,7 @@ static size_t syscall_arg__scnprintf_open_flags(char *bf, size_t size,
 static struct syscall_fmt {
 	const char *name;
 	const char *alias;
-	size_t	   (*arg_scnprintf[6])(char *bf, size_t size, unsigned long arg, u8 arg_idx, u8 *arg_mask);
+	size_t	   (*arg_scnprintf[6])(char *bf, size_t size, struct syscall_arg *arg);
 	bool	   errmsg;
 	bool	   timeout;
 	bool	   hexret;
@@ -364,8 +360,7 @@ struct syscall {
 	const char	    *name;
 	bool		    filtered;
 	struct syscall_fmt  *fmt;
-	size_t		    (**arg_scnprintf)(char *bf, size_t size,
-					      unsigned long arg, u8 arg_idx, u8 *args_mask);
+	size_t		    (**arg_scnprintf)(char *bf, size_t size, struct syscall_arg *arg);
 };
 
 static size_t fprintf_duration(unsigned long t, FILE *fp)
@@ -605,30 +600,35 @@ static int trace__read_syscall_info(struct trace *trace, int id)
 static size_t syscall__scnprintf_args(struct syscall *sc, char *bf, size_t size,
 				      unsigned long *args)
 {
-	int i = 0;
 	size_t printed = 0;
 
 	if (sc->tp_format != NULL) {
 		struct format_field *field;
-		u8 mask = 0, bit = 1;
+		u8 bit = 1;
+		struct syscall_arg arg = {
+			.idx  = 0,
+			.mask = 0,
+		};
 
 		for (field = sc->tp_format->format.fields->next; field;
-		     field = field->next, ++i, bit <<= 1) {
-			if (mask & bit)
+		     field = field->next, ++arg.idx, bit <<= 1) {
+			if (arg.mask & bit)
 				continue;
 
 			printed += scnprintf(bf + printed, size - printed,
 					     "%s%s: ", printed ? ", " : "", field->name);
-
-			if (sc->arg_scnprintf && sc->arg_scnprintf[i]) {
-				printed += sc->arg_scnprintf[i](bf + printed, size - printed,
-								args[i], i, &mask);
+			if (sc->arg_scnprintf && sc->arg_scnprintf[arg.idx]) {
+				arg.val = args[arg.idx];
+				printed += sc->arg_scnprintf[arg.idx](bf + printed,
+								      size - printed, &arg);
 			} else {
 				printed += scnprintf(bf + printed, size - printed,
-						     "%ld", args[i]);
+						     "%ld", args[arg.idx]);
 			}
 		}
 	} else {
+		int i = 0;
+
 		while (i < 6) {
 			printed += scnprintf(bf + printed, size - printed,
 					     "%sarg%d: %ld",
-- 
1.8.1.4


  parent reply	other threads:[~2013-10-14 20:26 UTC|newest]

Thread overview: 163+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-14 19:59 [GIT PULL 000/161] perf/core improvements and fixes Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 001/161] tools/perf: Standardize feature support define names to: HAVE_{FEATURE}_SUPPORT Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 002/161] tools/perf/build: Add feature check core code Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 003/161] tools/perf/build: Add 'autodep' functionality, generate feature test dependencies automatically Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 004/161] tools/perf/build: Split out feature check: 'libnuma' Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 005/161] tools/perf/build: Split out feature check: 'stackprotector-all' Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 006/161] tools/perf/build: Split out feature check: 'stackprotector' Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 007/161] tools/perf/build: Split out feature check: 'volatile-register-var' Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 008/161] tools/perf/build: Split out feature check: 'fortify-source' Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 009/161] tools/perf/build: Split out feature check: 'bionic' Arnaldo Carvalho de Melo
2013-10-14 19:59 ` [PATCH 010/161] tools/perf/build: Clean up the libelf logic in config/Makefile Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 011/161] tools/perf/build: Split out feature check: 'libelf' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 012/161] tools/perf/build: Split out feature check: 'glibc' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 013/161] tools/perf/build: Split out feature check: 'dwarf' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 014/161] tools/perf/build: Clean up the mmap logic in config/Makefile Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 015/161] tools/perf/build: Split out feature check: 'libelf-mmap' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 016/161] tools/perf/build: Split out feature check: 'libelf-getphdrnum' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 017/161] tools/perf/build: Clean up the libunwind logic in config/Makefile Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 018/161] tools/perf/build: Split out feature check: 'libunwind' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 019/161] tools/perf/build: Split out feature check: 'libaudit' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 020/161] tools/perf/build: Split out feature check: 'libslang' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 021/161] tools/perf/build: Split out feature check: 'gtk2' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 022/161] tools/perf/build: Split out feature check: 'gtk2-infobar' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 023/161] tools/perf/build: Split out feature check: 'libperl' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 024/161] tools/perf/build: Split out feature check: 'libpython' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 025/161] tools/perf/build: Split out feature check: 'libpython-version' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 026/161] tools/perf/build: Split out feature check: 'libbfd' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 027/161] tools/perf/build: Split out feature check: 'strlcpy' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 028/161] tools/perf/build: Split out feature check: 'on-exit' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 029/161] tools/perf/build: Split out feature check: 'backtrace' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 030/161] tools/perf: Clean up util/include/linux/compiler.h Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 031/161] tools/perf: Turn strlcpy() into a __weak function Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 032/161] tools/perf/build: Speed up auto-detection of features by adding a 'test-all' target Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 033/161] tools/perf/build: Speed up git-version test on re-make Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 034/161] tools/perf/build: Speed up the final link Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 035/161] tools/perf: Fix double/triple-build of the feature detection logic during 'make install' et al Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 036/161] tools/perf/build: Invoke feature-checks 'clean' target from the main Makefile Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 037/161] tools/perf/build: Speed up auto-detection Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 038/161] tools/perf/build: Improve printout-of auto-detected features Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 039/161] tools/perf/build: Automatically build in parallel, based on number of CPUs in the system Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 040/161] tools/perf/build: Flip Makefile.parallel and Makefile.perf Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 041/161] tools/perf/build: Standardize the various messages output by parallel make Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 042/161] tools/perf/build: Split out feature checks: 'liberty', 'liberty-z', 'cplus-demangle' Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 043/161] tools/perf/build: Remove unused config/feature-tests.mak Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 044/161] tools/perf/build: Clean up various testcases Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 045/161] tools/perf/build: Collapse the test-all.c testcase Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 046/161] tools/perf/build: Pass through all targets to Makefile.perf Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 047/161] tools/perf/build: Make sure autodep feature binaries honor the O= setting Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 048/161] tools/perf/build: Exclude MAKEFLAGS from nested invocation Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 049/161] tools/perf/build: Fix non-canonical directory names in O= Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 050/161] tools/perf/build: Fix O=/some/dir perf.o type of targets Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 051/161] tools/perf/build: Harmonize the style of the feature testcases Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 052/161] tools/perf/build: Pass through LDFLAGS to feature tests Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 053/161] tools/perf/build: Clean up feature_print_code() Arnaldo Carvalho de Melo
2013-10-14 20:00 ` Arnaldo Carvalho de Melo [this message]
2013-10-14 20:00 ` [PATCH 055/161] perf trace: Allow passing parms to arg formatters Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 056/161] perf trace: Use strarray for ltrace's whence arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 057/161] perf trace: Beautify fcntl 'cmd' arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 058/161] perf trace: Beautify rt_sigprocmask 'how' arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 059/161] perf trace: Beautify signal number arg in several syscalls Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 060/161] perf trace: Beautify socket 'family' arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 061/161] perf trace: Beautify socket 'type' arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 062/161] perf trace: Beautify access 'mode' arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 063/161] perf trace: Beautify rlmimit resources Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 064/161] perf trace: Add option to show full timestamp Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 065/161] perf trace: Remove duplicate mmap entry in syscall_fmts array Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 066/161] perf trace: Don't print zeroed args Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 067/161] perf trace: Beautify send/recv syscall 'flags' arg Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 068/161] perf trace: Beautify eventfd2 " Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 069/161] perf trace: Add option to show process COMM Arnaldo Carvalho de Melo
2013-10-14 20:00 ` [PATCH 070/161] perf completion: Don't dictate perf install location Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 071/161] perf completion: Update __ltrim_colon_completions Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 072/161] perf completion: Strip dependency on _filedir Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 073/161] perf completion: Strip function_exists () Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 074/161] perf completion: Strip dependency on bash-completion Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 075/161] perf completion: Use more comp words Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 076/161] perf symbols: Support for Openembedded/Yocto -dbg packages Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 077/161] perf tools: Remove unused trace-event-* code Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 078/161] perf tools: Unify page_size usage Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 079/161] perf lock: Remove dead code Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 080/161] perf lock: Return proper code in report_lock_*_event Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 081/161] perf lock: Plug some memleaks Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 082/161] perf lock: Redo __cmd_report Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 083/161] perf lock: Limit bad rate precision Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 084/161] perf lock: Account for lock average wait time Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 085/161] perf tools: Check mmap pages value early Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 086/161] perf tools: Add possibility to specify mmap size Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 087/161] perf evlist: Introduce perf_evlist__new_default function Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 088/161] perf tools: Adding throttle event data struct support Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 089/161] perf symbols: Add new option --ignore-vmlinux for perf top Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 090/161] perf tools: Separate out GTK codes to libperf-gtk.so Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 091/161] perf sort: Fix a memory leak on srcline Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 092/161] perf annotate: Reuse path from the result of addr2line Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 093/161] perf hists: Free srcline when freeing hist_entry Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 094/161] perf annotate: Factor out get/free_srcline() Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 095/161] perf tools: Do not try to call addr2line on non-binary files Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 096/161] perf annotate: Pass dso instead of dso_name to get_srcline() Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 097/161] perf tools: Save failed result of get_srcline() Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 098/161] perf tools: Implement addr2line directly using libbfd Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 099/161] perf tools: Fix srcline sort key behavior Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 100/161] perf trace: Beautify epoll_ctl 'op' arg Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 101/161] perf trace: Beautify flock 'cmd' arg Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 102/161] perf trace: Add helper for syscalls with a single strarray arg Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 103/161] perf trace: Don't supress zeroed args when there is an strarray entry for it Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 104/161] perf trace: Use socket's beautifiers in socketpair Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 105/161] perf trace: Beautify pipe2 'flags' arg Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 106/161] perf trace: Add beautifier for clock_gettime's clk_id argument Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 107/161] perf trace: Handle MSG_WAITFORONE not defined Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 108/161] perf trace: Beautify mlock & friends 'addr' arg Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 109/161] perf trace: Show path associated with fd in live sessions Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 110/161] perf trace: Add 'trace' alias to 'perf trace' Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 111/161] perf bench sched: Add --threaded option Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 112/161] perf machine: Use snprintf instead of sprintf Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 113/161] perf tools: Add missing -ldl for gtk build Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 114/161] perf tools: Move start conditions to start of the flex file Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 115/161] perf stat: Don't print bogus data on -e cycles Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 116/161] perf stat: Don't print bogus data on -e instructions Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 117/161] perf tools: Ignore 'perf timechart' output file Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 118/161] perf bench: Fix failing assertions in numa bench Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 119/161] perf evlist: Fix perf_evlist__mmap_read event overflow Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 120/161] perf stat: Fix misleading message when specifying cpu list or system wide Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 121/161] perf stat: Don't require a workload when using system wide or CPU options Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 122/161] perf stat: Add units to nanosec-based counters Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 123/161] perf trace: Fix comm resolution when reading events from file Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 124/161] perf trace: Add record option Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 125/161] perf machine: Add method to loop over threads and invoke handler Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 126/161] perf trace: Use new machine method to loop over threads Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 127/161] perf intlist: Add priv member Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 128/161] perf symbols: Make a separate function to parse /proc/modules Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 129/161] perf trace: Allow specifying index offset in strarrays Arnaldo Carvalho de Melo
2013-10-14 20:01 ` [PATCH 130/161] perf trace: Prepare the strarray scnprintf method for reuse Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 131/161] perf trace: Initial beautifier for ioctl's 'cmd' arg Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 132/161] perf tools: Fix redirection printouts Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 133/161] perf tools: Implement summary output for 'make clean' Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 134/161] tools: Harmonize the various build messages in perf, lib-traceevent, lib-lk Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 135/161] perf tools: Align perf version output to other build messages Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 136/161] perf tools: Implement summary output for 'make install' Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 137/161] perf timechart: Add example in the documentation Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 138/161] perf trace: Improve the error messages Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 139/161] perf util: Add findnew method to intlist Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 140/161] perf trace: Add summary option to dump syscall statistics Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 141/161] perf tools: Fix old GCC build error in 'get_srcline' Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 142/161] perf tests: Fix memory leak in dso-data.c Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 143/161] perf tools: Separate lbfd check out of NO_DEMANGLE condition Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 144/161] perf symbols: Validate kcore module addresses Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 145/161] perf symbols: Workaround objdump difficulties with kcore Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 146/161] perf symbols: Add map_groups__find_ams() Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 147/161] tools/perf/build: Fix non-existent build directory handling Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 148/161] tools/perf/build: Pass through DEBUG parameter Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 149/161] tools/perf/build: Fix DPACKAGE definitions for the libbfd et al testcases Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 150/161] tools/perf/build: Simplify the libelf logic Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 151/161] tools/perf/build: Remove the volatile-register-var feature check Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 152/161] tools/perf/build: Improve the 'stackprotector' feature test Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 153/161] tools/perf/build: Simplify the autodep inclusion rule Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 154/161] perf annotate: Find kcore symbols on other maps Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 155/161] perf tools: Add copyfile_mode() Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 156/161] perf symbols: Add ability to find kcore in build-id cache Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 157/161] perf annotate: Fix annotate_browser__callq() Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 158/161] perf buildid-cache: Add ability to add kcore to the cache Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 159/161] perf annotate: Another fix for annotate_browser__callq() Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 160/161] perf symbols: Fix a memory leak due to symbol__delete not being used Arnaldo Carvalho de Melo
2013-10-14 20:02 ` [PATCH 161/161] perf symbols: Fix a mmap and munmap mismatched bug Arnaldo Carvalho de Melo
2013-10-15  5:08 ` [GIT PULL 000/161] perf/core improvements and fixes Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1381780950-25642-55-git-send-email-acme@infradead.org \
    --to=acme@infradead.org \
    --cc=acme@redhat.com \
    --cc=adrian.hunter@intel.com \
    --cc=dsahern@gmail.com \
    --cc=efault@gmx.de \
    --cc=eranian@google.com \
    --cc=fweisbec@gmail.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®