aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/strace/strace-4.7/0032-Fix-kernel-release-string-parsing.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/strace/strace-4.7/0032-Fix-kernel-release-string-parsing.patch')
-rw-r--r--meta/recipes-devtools/strace/strace-4.7/0032-Fix-kernel-release-string-parsing.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/meta/recipes-devtools/strace/strace-4.7/0032-Fix-kernel-release-string-parsing.patch b/meta/recipes-devtools/strace/strace-4.7/0032-Fix-kernel-release-string-parsing.patch
new file mode 100644
index 0000000000..cef42223d2
--- /dev/null
+++ b/meta/recipes-devtools/strace/strace-4.7/0032-Fix-kernel-release-string-parsing.patch
@@ -0,0 +1,38 @@
+Upstream-Status: Backport
+
+From 0dbc80de895c25769791b7726022a274695eec31 Mon Sep 17 00:00:00 2001
+From: "Dmitry V. Levin" <ldv@altlinux.org>
+Date: Mon, 14 May 2012 23:42:10 +0000
+Subject: [PATCH] Fix kernel release string parsing
+
+* strace.c (get_os_release): Handle "X.Y-something" utsname.release
+strings properly.
+
+Reported-by: Bryce Gibson <bryce@gibson-consulting.com.au>
+---
+ strace.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/strace.c b/strace.c
+index 857136d..65dee7d 100644
+--- a/strace.c
++++ b/strace.c
+@@ -1432,8 +1432,14 @@ get_os_release(void)
+ break;
+ while (*p >= '0' && *p <= '9')
+ p++;
+- if (*p != '.')
++ if (*p != '.') {
++ if (rel >= KERNEL_VERSION(0,1,0)) {
++ /* "X.Y-something" means "X.Y.0" */
++ rel <<= 8;
++ break;
++ }
+ error_msg_and_die("Bad OS release string: '%s'", u.release);
++ }
+ p++;
+ }
+ return rel;
+--
+1.7.10.4
+