From patchwork Thu Feb 18 14:02:01 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 8349961 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 55D719F38B for ; Thu, 18 Feb 2016 14:11:16 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 720FA20165 for ; Thu, 18 Feb 2016 14:11:15 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8AC2820123 for ; Thu, 18 Feb 2016 14:11:14 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1aWPGx-0004Bz-KM; Thu, 18 Feb 2016 14:09:35 +0000 Received: from mout.kundenserver.de ([212.227.17.13]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aWPCh-0007Xz-4l for linux-arm-kernel@lists.infradead.org; Thu, 18 Feb 2016 14:05:14 +0000 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue101) with ESMTPA (Nemesis) id 0Lp7C8-1a0Nlt0bCO-00eq6N; Thu, 18 Feb 2016 15:04:49 +0100 From: Arnd Bergmann To: Russell King Subject: [PATCH 9/9] ARM: fix kprobe test with CONFIG_CPU_32v3 Date: Thu, 18 Feb 2016 15:02:01 +0100 Message-Id: <1455804123-2526139-10-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1455804123-2526139-1-git-send-email-arnd@arndb.de> References: <1455804123-2526139-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:7spuFblZJSXC87OgicHMBL+t3fX7E1Ctl04u9ojiYM9kUS+dNoW JR0njk4I2tqbEr9LB0qPY/Z6+UFfjQAVmRY8BaYJNM///XjI0ifIWWZ07fs7VCXDq2j4R3R 4cAEy5XQJmBKGy8w6mZynX0NDtlR+1yg2fpErOCQFEwLvdGU45c5A7O8t5n94+VzC0NaSMh 69lRiY9Nu3mGWu/ORUuWg== X-UI-Out-Filterresults: notjunk:1; V01:K0:tYGU7+3xiVY=:YNUekPsUQhJGONMotfSQBE C79o2z8mMSnfYwNIVLXI0pER1ucB9W4GFI1/4j9umND5fvB6CbJsa6kq0XUSjS3WHE4sRt6uR MebRa1ioMP7GkbRfjWf/qaAXXzNv60JpYaTVLfTySQVX0Y3Bg4B0tUDEueeM10bQddcZt9zpL CQY+65sXGXKYwkiRGUTWIfBL/0aZBlhMOGQ7Qo7gfMDcj415r4GF+uEdMqPtpqVFfUwe8W04d liRiYbsGZmpOPZ705gFTZdwOYr9F2vlHY+Vz4cGGSicv1JZzEcE62FTKf9iFrWO3MU++34Wt7 bwCflrz0LZKvQ+vZCWs6HzrweDAfnR6FRYJ+0YtVbUMEjb77nPXLth779bgSPKom2hJDbY5OS v1AB3o2Gvrz1wox5+ezzvp4ksG6F3kL+Lc9XcJCdCMSQlCq1hotiTsy5NjIJ11fGto4is1b/l dD/xHBuaUjvgmGNyjHh+6HDb99zuUkzcxhHE9ZHHZNNT8jOTH2PDCIpdpdylBTYica71IXr88 gle8/SOwJy2iVq6zSRgO/qNEyce5Qn0+7zBfKiqR5RmyYzEzYG6c0+XjrbPXrjRu3dD/+zbXi 3I13b/pEgyRLEJ/xo4MhHCwrYRiSFX2edvyaVFk45q9l5Cd8yGurbbRMZXh9BFACdW7TITqSO jZErkT3KBDtFJlvil8XBD34gNnFw6hp056540Ye4dJfK7ugNvxltXcKx5pGHB6Rh20xY= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160218_060511_909224_84786D8B X-CRM114-Status: GOOD ( 10.79 ) X-Spam-Score: -2.6 (--) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jon Medhurst , Arnd Bergmann , Nicolas Pitre , Marc Zyngier , Ard Biesheuvel , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP ARMv3 did not have 16-bit load/store or 32-bit multiply instructions, so building the kprobe test code fails with lots of warnings about these: /tmp/ccI4SKHx.s:19585: Error: selected processor does not support ARM mode `umull r0,r1,r2,r3' /tmp/ccI4SKHx.s:19617: Error: selected processor does not support ARM mode `umullls r7,r8,r9,r10' /tmp/ccI4SKHx.s:19645: Error: selected processor does not support ARM mode `umull lr,r12,r11,r13' /tmp/ccI4SKHx.s:19727: Error: selected processor does not support ARM mode `umulls r0,r1,r2,r3' ... /tmp/ccI4SKHx.s:21273: Error: selected processor does not support ARM mode `strh r0,[r1,-r2]' /tmp/ccI4SKHx.s:21309: Error: selected processor does not support ARM mode `streqh r14,[r11,r12]' /tmp/ccI4SKHx.s:21333: Error: selected processor does not support ARM mode `streqh r14,[r13,r12]' This puts all the affected instructions inside an #ifdef section, like we do for the other architecture levels. Signed-off-by: Arnd Bergmann Acked-by: Jon Medhurst Acked-by: Nicolas Pitre --- arch/arm/probes/kprobes/test-arm.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/arm/probes/kprobes/test-arm.c b/arch/arm/probes/kprobes/test-arm.c index 8866aedfdea2..4e8511f0582d 100644 --- a/arch/arm/probes/kprobes/test-arm.c +++ b/arch/arm/probes/kprobes/test-arm.c @@ -391,6 +391,7 @@ void kprobe_arm_test_cases(void) TEST_UNSUPPORTED(__inst_arm(0xe0700090) " @ undef") TEST_UNSUPPORTED(__inst_arm(0xe07fff9f) " @ undef") +#if __LINUX_ARM_ARCH__ >= 4 TEST_RR( "umull r0, r1, r",2, VAL1,", r",3, VAL2,"") TEST_RR( "umullls r7, r8, r",9, VAL2,", r",10, VAL1,"") TEST_R( "umull lr, r12, r",11,VAL3,", r13") @@ -436,6 +437,7 @@ void kprobe_arm_test_cases(void) TEST_UNSUPPORTED(__inst_arm(0xe0f0f392) " @ smlals r0, pc, r2, r3") TEST_UNSUPPORTED(__inst_arm(0xe0f0139f) " @ smlals r0, r1, pc, r3") TEST_UNSUPPORTED(__inst_arm(0xe0f01f92) " @ smlals r0, r1, r2, pc") +#endif TEST_GROUP("Synchronization primitives") @@ -478,7 +480,7 @@ void kprobe_arm_test_cases(void) TEST_UNSUPPORTED("ldrexh r2, [sp]") #endif TEST_GROUP("Extra load/store instructions") - +#if __LINUX_ARM_ARCH__ >= 4 TEST_RPR( "strh r",0, VAL1,", [r",1, 48,", -r",2, 24,"]") TEST_RPR( "streqh r",14,VAL2,", [r",11,0, ", r",12, 48,"]") TEST_UNSUPPORTED( "streqh r14, [r13, r12]") @@ -560,6 +562,7 @@ void kprobe_arm_test_cases(void) TEST( "ldrsh r0, [pc, #0]") TEST_UNSUPPORTED(__inst_arm(0xe1ffc3f0) " @ ldrsh r12, [pc, #48]!") TEST_UNSUPPORTED(__inst_arm(0xe0d9f3f0) " @ ldrsh pc, [r9], #48") +#endif #if __LINUX_ARM_ARCH__ >= 7 TEST_UNSUPPORTED("strht r1, [r2], r3")