linux-tools: Fix/revert unportable code in perf trace (fixes FTBFS on powerpc, sparc)
svn path=/dists/trunk/linux-tools/; revision=21033
This commit is contained in:
parent
3e8d83d5ac
commit
f38b58be66
|
@ -1,3 +1,10 @@
|
|||
linux-tools (3.13-1~exp3) UNRELEASED; urgency=medium
|
||||
|
||||
* linux-tools: Fix/revert unportable code in perf trace (fixes FTBFS
|
||||
on powerpc, sparc)
|
||||
|
||||
-- Ben Hutchings <ben@decadent.org.uk> Wed, 05 Feb 2014 04:45:12 +0000
|
||||
|
||||
linux-tools (3.13-1~exp2) experimental; urgency=medium
|
||||
|
||||
* Merge changes from sid up to 3.12.6-3
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Thu, 6 Feb 2014 00:46:51 +0000
|
||||
Subject: [PATCH 2/3] perf trace: Add fallback definition of EFD_SEMAPHORE
|
||||
Forwarded: http://mid.gmane.org/1391648435.3003.100.camel@deadeye.wl.decadent.org.uk
|
||||
|
||||
glibc 2.17 is missing this on sparc, despite the fact that it's
|
||||
not architecture-specific.
|
||||
|
||||
Fixes: 49af9e93adfa ('perf trace: Beautify eventfd2 'flags' arg')
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
Cc: <stable@vger.kernel.org>
|
||||
---
|
||||
tools/perf/builtin-trace.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
|
||||
index c9671bd..5c32dcf 100644
|
||||
--- a/tools/perf/builtin-trace.c
|
||||
+++ b/tools/perf/builtin-trace.c
|
||||
@@ -35,6 +35,10 @@
|
||||
# define MADV_UNMERGEABLE 13
|
||||
#endif
|
||||
|
||||
+#ifndef EFD_SEMAPHORE
|
||||
+# define EFD_SEMAPHORE 1
|
||||
+#endif
|
||||
+
|
||||
struct tp_field {
|
||||
int offset;
|
||||
union {
|
|
@ -0,0 +1,44 @@
|
|||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Thu, 6 Feb 2014 00:47:06 +0000
|
||||
Subject: [PATCH 3/3] perf trace: Decode architecture-specific signal numbers
|
||||
Forwarded: http://mid.gmane.org/1391648441.3003.101.camel@deadeye.wl.decadent.org.uk
|
||||
|
||||
SIGSTKFLT is not defined on alpha, mips or sparc.
|
||||
SIGEMT and SIGSWI are defined on some architectures and should be
|
||||
decoded here if so.
|
||||
|
||||
Fixes: 8bad5b0abfdb ('perf trace: Beautify signal number arg in several syscalls')
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
Cc: <stable@vger.kernel.org>
|
||||
---
|
||||
tools/perf/builtin-trace.c | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
|
||||
index 5c32dcf..25ea64c 100644
|
||||
--- a/tools/perf/builtin-trace.c
|
||||
+++ b/tools/perf/builtin-trace.c
|
||||
@@ -807,7 +807,6 @@ static size_t syscall_arg__scnprintf_signum(char *bf, size_t size, struct syscal
|
||||
P_SIGNUM(PIPE);
|
||||
P_SIGNUM(ALRM);
|
||||
P_SIGNUM(TERM);
|
||||
- P_SIGNUM(STKFLT);
|
||||
P_SIGNUM(CHLD);
|
||||
P_SIGNUM(CONT);
|
||||
P_SIGNUM(STOP);
|
||||
@@ -823,6 +822,15 @@ static size_t syscall_arg__scnprintf_signum(char *bf, size_t size, struct syscal
|
||||
P_SIGNUM(IO);
|
||||
P_SIGNUM(PWR);
|
||||
P_SIGNUM(SYS);
|
||||
+#ifdef SIGEMT
|
||||
+ P_SIGNUM(EMT);
|
||||
+#endif
|
||||
+#ifdef SIGSTKFLT
|
||||
+ P_SIGNUM(STKFLT);
|
||||
+#endif
|
||||
+#ifdef SIGSWI
|
||||
+ P_SIGNUM(SWI);
|
||||
+#endif
|
||||
default: break;
|
||||
}
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Thu, 6 Feb 2014 00:46:39 +0000
|
||||
Subject: [PATCH 1/3] Revert "perf trace: Initial beautifier for ioctl's 'cmd' arg"
|
||||
Forwarded: http://mid.gmane.org/1391648425.3003.99.camel@deadeye.wl.decadent.org.uk
|
||||
|
||||
This reverts commit 78645cf3ed32860a3e83b8e35aa469f5b844a4ba,
|
||||
which is incorrect for many architectures and has broken
|
||||
compilation on at least powerpc and sparc.
|
||||
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
Cc: <stable@vger.kernel.org>
|
||||
---
|
||||
tools/perf/builtin-trace.c | 34 +---------------------------------
|
||||
1 file changed, 1 insertion(+), 33 deletions(-)
|
||||
|
||||
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
|
||||
index 8be17fc..c9671bd 100644
|
||||
--- a/tools/perf/builtin-trace.c
|
||||
+++ b/tools/perf/builtin-trace.c
|
||||
@@ -275,14 +275,6 @@ static size_t syscall_arg__scnprintf_strarray(char *bf, size_t size,
|
||||
|
||||
#define SCA_STRARRAY syscall_arg__scnprintf_strarray
|
||||
|
||||
-static size_t syscall_arg__scnprintf_strhexarray(char *bf, size_t size,
|
||||
- struct syscall_arg *arg)
|
||||
-{
|
||||
- return __syscall_arg__scnprintf_strarray(bf, size, "%#x", arg);
|
||||
-}
|
||||
-
|
||||
-#define SCA_STRHEXARRAY syscall_arg__scnprintf_strhexarray
|
||||
-
|
||||
static size_t syscall_arg__scnprintf_fd(char *bf, size_t size,
|
||||
struct syscall_arg *arg);
|
||||
|
||||
@@ -835,28 +827,6 @@ static size_t syscall_arg__scnprintf_signum(char *bf, size_t size, struct syscal
|
||||
|
||||
#define SCA_SIGNUM syscall_arg__scnprintf_signum
|
||||
|
||||
-#define TCGETS 0x5401
|
||||
-
|
||||
-static const char *tioctls[] = {
|
||||
- "TCGETS", "TCSETS", "TCSETSW", "TCSETSF", "TCGETA", "TCSETA", "TCSETAW",
|
||||
- "TCSETAF", "TCSBRK", "TCXONC", "TCFLSH", "TIOCEXCL", "TIOCNXCL",
|
||||
- "TIOCSCTTY", "TIOCGPGRP", "TIOCSPGRP", "TIOCOUTQ", "TIOCSTI",
|
||||
- "TIOCGWINSZ", "TIOCSWINSZ", "TIOCMGET", "TIOCMBIS", "TIOCMBIC",
|
||||
- "TIOCMSET", "TIOCGSOFTCAR", "TIOCSSOFTCAR", "FIONREAD", "TIOCLINUX",
|
||||
- "TIOCCONS", "TIOCGSERIAL", "TIOCSSERIAL", "TIOCPKT", "FIONBIO",
|
||||
- "TIOCNOTTY", "TIOCSETD", "TIOCGETD", "TCSBRKP", [0x27] = "TIOCSBRK",
|
||||
- "TIOCCBRK", "TIOCGSID", "TCGETS2", "TCSETS2", "TCSETSW2", "TCSETSF2",
|
||||
- "TIOCGRS485", "TIOCSRS485", "TIOCGPTN", "TIOCSPTLCK",
|
||||
- "TIOCGDEV||TCGETX", "TCSETX", "TCSETXF", "TCSETXW", "TIOCSIG",
|
||||
- "TIOCVHANGUP", "TIOCGPKT", "TIOCGPTLCK", "TIOCGEXCL",
|
||||
- [0x50] = "FIONCLEX", "FIOCLEX", "FIOASYNC", "TIOCSERCONFIG",
|
||||
- "TIOCSERGWILD", "TIOCSERSWILD", "TIOCGLCKTRMIOS", "TIOCSLCKTRMIOS",
|
||||
- "TIOCSERGSTRUCT", "TIOCSERGETLSR", "TIOCSERGETMULTI", "TIOCSERSETMULTI",
|
||||
- "TIOCMIWAIT", "TIOCGICOUNT", [0x60] = "FIOQSIZE",
|
||||
-};
|
||||
-
|
||||
-static DEFINE_STRARRAY_OFFSET(tioctls, 0x5401);
|
||||
-
|
||||
#define STRARRAY(arg, name, array) \
|
||||
.arg_scnprintf = { [arg] = SCA_STRARRAY, }, \
|
||||
.arg_parm = { [arg] = &strarray__##array, }
|
||||
@@ -937,9 +907,7 @@ static struct syscall_fmt {
|
||||
{ .name = "getrlimit", .errmsg = true, STRARRAY(0, resource, rlimit_resources), },
|
||||
{ .name = "ioctl", .errmsg = true,
|
||||
.arg_scnprintf = { [0] = SCA_FD, /* fd */
|
||||
- [1] = SCA_STRHEXARRAY, /* cmd */
|
||||
- [2] = SCA_HEX, /* arg */ },
|
||||
- .arg_parm = { [1] = &strarray__tioctls, /* cmd */ }, },
|
||||
+ [2] = SCA_HEX, /* arg */ }, },
|
||||
{ .name = "kill", .errmsg = true,
|
||||
.arg_scnprintf = { [1] = SCA_SIGNUM, /* sig */ }, },
|
||||
{ .name = "linkat", .errmsg = true,
|
|
@ -2,3 +2,6 @@ modpost-symbol-prefix.patch
|
|||
tools-perf-version.patch
|
||||
tools-perf-install.patch
|
||||
usbip-document-tcp-wrappers.patch
|
||||
revert-perf-trace-Initial-beautifier-for-ioctl-s-cmd.patch
|
||||
perf-trace-Add-fallback-definition-of-EFD_SEMAPHORE.patch
|
||||
perf-trace-Decode-architecture-specific-signal-numbe.patch
|
||||
|
|
Loading…
Reference in New Issue