From patchwork Thu Jul 6 14:33:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 107164 Delivered-To: patch@linaro.org Received: by 10.182.135.102 with SMTP id pr6csp2248185obb; Thu, 6 Jul 2017 07:36:06 -0700 (PDT) X-Received: by 10.84.236.76 with SMTP id h12mr13865238pln.88.1499351766130; Thu, 06 Jul 2017 07:36:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499351766; cv=none; d=google.com; s=arc-20160816; b=mEDHduf/a4wpvjDENpw9b2nEgpaUlm6jWUT9XU3DRVmvJdul0jTuLDfNsOHUZB8ATx TeCsAWPInDszLZXmkWFP8pAyc03GPk++fy/OXApu+vZtmVKcNzuwphqg5t3WJtQynjxA qYMbQbtJki1nzkkbaSArjtxBidj6yRN+a/2jqs2lBJSJ4LcVT5xpMqOQ7JtajkXdGDR7 9y1Qx+x6iWD2+o7rfXQMtWZmOgxyx27+aaRiR1Rv3MYIiUVjjJPkJgVW115CEtzq2+Yf +pl4Mh9ZQ0LmfpKL7KBFvJILtSoNN1J9gIOYIUfQc7I5PPVSDBAAjglHNTg8DJz+10wD 6HDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=X+q4wMg2+nJ12iaurwMPg5e6QL+mDKIjFvSqw4sPLqM=; b=qhNfGdxCqyKBnMwz3nIfvLYD2TdHu8HrshMZ4qBOUrlJuBDo7nj7ciVBk+fIMhB4so uldsUE6PALQTVuk11bgYUYey+wFXvNlaTQkA5sQ9eR7QPYpUOMmcMjkMgqdGjtjDN9d4 e48YYhpUa8LsImhAFYZpJFZf6VsGom8sv0dSsgi97Tm2YkuWgZKCg4d7OgOi7gdeLygj 0SDkuO/MZ633cuBOgUToKUpF3g/1JfFxv+vExP29lc7wpHRxbMYgoOaS8WhIy2VK/mI8 Ta4vTNhf26tDlFQXOUuN0lY0XY7snx0O8A7fy4nZr/KHBh+qvFjVQJHTSMAC3y8ea22K irzA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=CY5oB7r6; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id b6si254571pll.83.2017.07.06.07.36.05; Thu, 06 Jul 2017 07:36:06 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=CY5oB7r6; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from review.yoctoproject.org (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id C56AA77E86; Thu, 6 Jul 2017 14:34:28 +0000 (UTC) X-Original-To: openembedded-core@lists.openembedded.org Delivered-To: openembedded-core@lists.openembedded.org Received: from mail-pg0-f49.google.com (mail-pg0-f49.google.com [74.125.83.49]) by mail.openembedded.org (Postfix) with ESMTP id 4DE3C774FC for ; Thu, 6 Jul 2017 14:34:02 +0000 (UTC) Received: by mail-pg0-f49.google.com with SMTP id j186so1925610pge.2 for ; Thu, 06 Jul 2017 07:34:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=9BN/uAVEDiGr7jBxSUfVS5eubEUAZqlLmRITJyJHk2o=; b=CY5oB7r6Yh8/MKbEazJ6vyEQyWxmMix0lVsQIuc+mUnxa4i3qPemwwCCIw5tYtZrGl c+PIeOJqjvpvoRaHBygsH458MWFyruxtcIVU9aKJj5dAC9NKD+KJW0S4jFFhvla/TCHJ gvFHTChd+aKv+TS+H4FmshjDv5yyq/qJBoz0V6mngp8UJdecaivpjBCCXMrgYFheCd3J 2OJcJvzaiRcZUVcAe4No4rA39GMBMqykmTy2YrInQ/pL42/Xs6EGzkVS1HtRHZGxUlEq SV4K2/Tl1MubXPaDBCwMD1I/csWzi2yV6IN3OkqRpCy4PjYUjPFmJiSMwGq8cyHJ2UH9 MngA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=9BN/uAVEDiGr7jBxSUfVS5eubEUAZqlLmRITJyJHk2o=; b=gWbk3KrZj++DL12Fkgk32KRp2IRJu70AX8FWJss5G+Y8qo3D19Mk27pBpHnwgY9Dzz jmjHK+5o5vxMrHqYzMiwlv6u4Z3pWzmQcHrePS/P7I/PumQ1ULv6YUSjDpu7HeB/eV6h DrkG/Aqw1uUWjKwJplzltRsSB51Px+aM3C1J1vYxYIc6bnqldtLT7E6vUgQZXQtusMOj keVXdnCNjFAZL1Ip4r7jQeHWj5ZlqPMbYXuB2+OuhLsrXy2Y/Xzlx90MybJVaRJUPOXN b+0Z6i7401IHuKrHReWzBuJicXfyVS1HbcT0SKfOQdrheBXU2W7LZEjUh5eNWU3tPBYi yAqQ== X-Gm-Message-State: AIVw1105zFsuSOZjM7p2WMaLPzGEvyy+E3QlTZBXQZn3AQ1QAKNkLUB2 KhDcNDsMZaLY+ECd X-Received: by 10.99.134.199 with SMTP id x190mr26740991pgd.127.1499351643995; Thu, 06 Jul 2017 07:34:03 -0700 (PDT) Received: from localhost.localdomain ([2601:646:8882:b8c::3df3]) by smtp.gmail.com with ESMTPSA id w66sm1132739pfi.63.2017.07.06.07.34.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 06 Jul 2017 07:34:03 -0700 (PDT) From: Khem Raj To: openembedded-core@lists.openembedded.org Date: Thu, 6 Jul 2017 07:33:20 -0700 Message-Id: <7c3dc9c2a0076d57e88fb474542d6796e9965a9a.1499351361.git.raj.khem@gmail.com> X-Mailer: git-send-email 2.13.2 In-Reply-To: References: Subject: [OE-core] [PATCH 19/22] valgrind: tests build fixes for musl X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: openembedded-core-bounces@lists.openembedded.org Errors-To: openembedded-core-bounces@lists.openembedded.org x86/aarch64 needed minor changes to make few testcases portable Signed-off-by: Khem Raj --- ...m64-Define-__THROW-if-not-already-defined.patch | 32 ++++++++++ ...emcheck-x86-Define-__THROW-if-not-defined.patch | 32 ++++++++++ ...verride-Replace-__modify_ldt-with-syscall.patch | 68 ++++++++++++++++++++++ meta/recipes-devtools/valgrind/valgrind_3.12.0.bb | 3 + 4 files changed, 135 insertions(+) create mode 100644 meta/recipes-devtools/valgrind/valgrind/0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch create mode 100644 meta/recipes-devtools/valgrind/valgrind/0002-memcheck-x86-Define-__THROW-if-not-defined.patch create mode 100644 meta/recipes-devtools/valgrind/valgrind/0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch -- 2.13.2 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch new file mode 100644 index 0000000000..a48d7db070 --- /dev/null +++ b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch @@ -0,0 +1,32 @@ +From 3409dc35c15bb14c8a525239806322648e079ab1 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 5 Jul 2017 17:12:43 -0700 +Subject: [PATCH 1/3] memcheck/arm64: Define __THROW if not already defined + +Helps compiling with musl where __THROW is not available + +Signed-off-by: Khem Raj +--- +Upstream-Status: Submitted + + memcheck/tests/arm64-linux/scalar.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/memcheck/tests/arm64-linux/scalar.h b/memcheck/tests/arm64-linux/scalar.h +index 9008816..8ef050f 100644 +--- a/memcheck/tests/arm64-linux/scalar.h ++++ b/memcheck/tests/arm64-linux/scalar.h +@@ -12,6 +12,10 @@ + #include + #include + ++#ifndef __THROW ++#define __THROW ++#endif ++ + // Since we use vki_unistd.h, we can't include . So we have to + // declare this ourselves. + extern long int syscall (long int __sysno, ...) __THROW; +-- +2.13.2 + diff --git a/meta/recipes-devtools/valgrind/valgrind/0002-memcheck-x86-Define-__THROW-if-not-defined.patch b/meta/recipes-devtools/valgrind/valgrind/0002-memcheck-x86-Define-__THROW-if-not-defined.patch new file mode 100644 index 0000000000..5433472291 --- /dev/null +++ b/meta/recipes-devtools/valgrind/valgrind/0002-memcheck-x86-Define-__THROW-if-not-defined.patch @@ -0,0 +1,32 @@ +From 67d199dbdcbb3feff5f8928f87725fc64c0307d7 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 5 Jul 2017 17:36:42 -0700 +Subject: [PATCH 2/3] memcheck/x86: Define __THROW if not defined + +musl does not have __THROW, therefore make it null + +Signed-off-by: Khem Raj +--- +Upstream-Status: Submitted + + memcheck/tests/x86-linux/scalar.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/memcheck/tests/x86-linux/scalar.h b/memcheck/tests/x86-linux/scalar.h +index ef28b03..52f742e 100644 +--- a/memcheck/tests/x86-linux/scalar.h ++++ b/memcheck/tests/x86-linux/scalar.h +@@ -11,6 +11,10 @@ + #include + #include + ++#ifndef __THROW ++#define __THROW ++#endif ++ + // Since we use vki_unistd.h, we can't include . So we have to + // declare this ourselves. + extern long int syscall (long int __sysno, ...) __THROW; +-- +2.13.2 + diff --git a/meta/recipes-devtools/valgrind/valgrind/0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch b/meta/recipes-devtools/valgrind/valgrind/0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch new file mode 100644 index 0000000000..fa1344c853 --- /dev/null +++ b/meta/recipes-devtools/valgrind/valgrind/0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch @@ -0,0 +1,68 @@ +From d103475875858ab8a2e6b53ce178bb2f63883d4c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 5 Jul 2017 17:37:56 -0700 +Subject: [PATCH 3/3] tests/seg_override: Replace __modify_ldt() with syscall() + +__modify_ldt() is specific to glibc, replacing it with syscall() +makes it more portable. + +Signed-off-by: Khem Raj +--- +Upstream-Status: Submitted + + none/tests/x86-linux/seg_override.c | 15 ++++++--------- + 1 file changed, 6 insertions(+), 9 deletions(-) + +diff --git a/none/tests/x86-linux/seg_override.c b/none/tests/x86-linux/seg_override.c +index b7619c9..c89874b 100644 +--- a/none/tests/x86-linux/seg_override.c ++++ b/none/tests/x86-linux/seg_override.c +@@ -2,6 +2,8 @@ + #include + #include + #include ++#include ++#include + + /* Stuff from Wine. */ + +@@ -52,14 +54,11 @@ inline static unsigned int wine_ldt_get_limit( const LDT_ENTRY *ent ) + /* our copy of the ldt */ + LDT_ENTRY ldt_copy[8192]; + +-/* System call to set LDT entry. */ +-//extern int __modify_ldt (int, struct modify_ldt_ldt_s *, size_t); +-extern int __modify_ldt (int, void *, size_t); +- + void print_ldt ( void ) + { + int res; +- res = __modify_ldt( 0, ldt_copy, 8192*sizeof(LDT_ENTRY) ); ++ /* System call to set LDT entry. */ ++ res = syscall(SYS_modify_ldt, 0, ldt_copy, 8192*sizeof(LDT_ENTRY) ); + printf("got %d bytes\n", res ); + perror("error is"); + } +@@ -83,9 +82,6 @@ struct modify_ldt_ldt_s + unsigned int empty:25; + }; + +-/* System call to set LDT entry. */ +-//extern int __modify_ldt (int, struct modify_ldt_ldt_s *, size_t); +- + void set_ldt1 ( void* base ) + { + int stat; +@@ -102,7 +98,8 @@ void set_ldt1 ( void* base ) + ldt_entry.read_exec_only = 0; + ldt_entry.limit_in_pages = 0; + ldt_entry.seg_not_present = 0; +- stat = __modify_ldt (1, &ldt_entry, sizeof (ldt_entry)); ++ /* System call to set LDT entry. */ ++ stat = syscall(SYS_modify_ldt, 1, &ldt_entry, sizeof (ldt_entry)); + printf("stat = %d\n", stat); + } + +-- +2.13.2 + diff --git a/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb index 4cf8062031..b63d27861d 100644 --- a/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb +++ b/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb @@ -32,6 +32,9 @@ SRC_URI = "http://www.valgrind.org/downloads/valgrind-${PV}.tar.bz2 \ file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \ file://0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch \ file://0001-memcheck-tests-Use-ucontext_t-instead-of-struct-ucon.patch \ + file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \ + file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch \ + file://0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch \ " SRC_URI_append_libc-musl = "\ file://0001-fix-build-for-musl-targets.patch \