[oe-commits] Andreas Oberritter : strace: fix kernel release string parsing

git at git.openembedded.org git at git.openembedded.org
Sun Mar 10 04:36:05 UTC 2013


Module: openembedded-core.git
Branch: master
Commit: bff8456be448f0ae7ddae917ed3e9893f056376d
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=bff8456be448f0ae7ddae917ed3e9893f056376d

Author: Andreas Oberritter <obi at opendreambox.org>
Date:   Fri Mar  8 01:31:24 2013 +0100

strace: fix kernel release string parsing

* Strace just aborts with two-digit kernel versions (e.g. 3.0-foo).
  Backport a patch from strace Git.

Signed-off-by: Andreas Oberritter <obi at opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 .../0032-Fix-kernel-release-string-parsing.patch   |   38 ++++++++++++++++++++
 meta/recipes-devtools/strace/strace_4.7.bb         |    3 +-
 2 files changed, 40 insertions(+), 1 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 0000000..cef4222
--- /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 at 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 at 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
+
diff --git a/meta/recipes-devtools/strace/strace_4.7.bb b/meta/recipes-devtools/strace/strace_4.7.bb
index 2d56e9a..e360e63 100644
--- a/meta/recipes-devtools/strace/strace_4.7.bb
+++ b/meta/recipes-devtools/strace/strace_4.7.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://strace.sourceforge.net"
 SECTION = "console/utils"
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=124500c21e856f0912df29295ba104c7"
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.xz \
            file://0003-util-fix-building-when-glibc-has-a-stub-process_vm_r.patch \
@@ -17,6 +17,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.xz \
            file://0029-Filter-out-redundant-32-ioctl-entries.patch \
            file://0030-Move-asm-generic-ioctl-definitions-to-linux-ioctlent.patch \
            file://0031-Add-support-for-tracing-32-bit-ARM-EABI-binaries-on-.patch \
+           file://0032-Fix-kernel-release-string-parsing.patch \
           "
 
 SRC_URI[md5sum] = "6054c3880a00c6703f83b57f15e04642"





More information about the Openembedded-commits mailing list