From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id CB3F4C636D6 for ; Thu, 23 Feb 2023 13:48:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 333B56B0072; Thu, 23 Feb 2023 08:48:19 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2E2F56B007B; Thu, 23 Feb 2023 08:48:19 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1AB376B0082; Thu, 23 Feb 2023 08:48:19 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 086666B0072 for ; Thu, 23 Feb 2023 08:48:19 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 9FA3CC02CF for ; Thu, 23 Feb 2023 13:48:18 +0000 (UTC) X-FDA: 80498685876.26.2BB1B59 Received: from mail.skyhub.de (unknown [5.9.137.197]) by imf26.hostedemail.com (Postfix) with ESMTP id C915D14002E for ; Thu, 23 Feb 2023 13:48:13 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=alien8.de header.s=dkim header.b=XfrOb7PS; dmarc=pass (policy=none) header.from=alien8.de; spf=temperror (imf26.hostedemail.com: error in processing during lookup of bp@alien8.de: DNS error) smtp.mailfrom=bp@alien8.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677160097; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=hO7XAwGHrh7jFk3tHCK0hu6b1iYy4OafzVQ/2u7pgt0=; b=dFu8jGRdDIheSThRI40tTiHA0SawwKUIjT8LWEaXHM29MqiJ96ugBzFc8N+MmR78pt7nHu MsaiwgQvwxuA9hQV2zt9JmdRtHiUDk1aaqUv743wyZd5WAEEj3AVWpOP7iE7/SBAv5Z3Ej c4rtWsbA71y/D5CQll64naY3LFSdmwY= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=alien8.de header.s=dkim header.b=XfrOb7PS; dmarc=pass (policy=none) header.from=alien8.de; spf=temperror (imf26.hostedemail.com: error in processing during lookup of bp@alien8.de: DNS error) smtp.mailfrom=bp@alien8.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677160097; a=rsa-sha256; cv=none; b=jrmRQu+c8wCbwPyMOMM/roZReWn5Qurv3tx0xCyiw0swxTgGiDbcq3IQQ8IOf5wE2aNVpL WFXRok3f18ytpzmP1UGU0rEWbkYjwqlkHWDcalU2oM9HS3+Q4slUpPvmsg5inXukem5Y9a lRB7nsfOHt0GUlrUDEvcqoxSNRaO/yY= Received: from zn.tnic (p5de8e9fe.dip0.t-ipconnect.de [93.232.233.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 669341EC06C0; Thu, 23 Feb 2023 14:47:55 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=dkim; t=1677160075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references; bh=hO7XAwGHrh7jFk3tHCK0hu6b1iYy4OafzVQ/2u7pgt0=; b=XfrOb7PSES+S6B9eQEkNsjlZRHVF4TWjOqGoeG4O4dPJLEYmxc8q1Ehl5tvde40+rpKH68 3wN/883J0piBys3sMxNwuV9jX8TKi5vKKbjvvJPUrReZ+bzfj4BeS2P9fQiRfrIHpbz3Bl 1WIZQ+6CUY+TxMk/R6vjW/NeYUVVxE8= Date: Thu, 23 Feb 2023 14:47:51 +0100 From: Borislav Petkov To: Rick Edgecombe Cc: x86@kernel.org, "H . Peter Anvin" , Thomas Gleixner , Ingo Molnar , linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-api@vger.kernel.org, Arnd Bergmann , Andy Lutomirski , Balbir Singh , Cyrill Gorcunov , Dave Hansen , Eugene Syromiatnikov , Florian Weimer , "H . J . Lu" , Jann Horn , Jonathan Corbet , Kees Cook , Mike Kravetz , Nadav Amit , Oleg Nesterov , Pavel Machek , Peter Zijlstra , Randy Dunlap , Weijiang Yang , "Kirill A . Shutemov" , John Allen , kcc@google.com, eranian@google.com, rppt@kernel.org, jamorris@linux.microsoft.com, dethoma@microsoft.com, akpm@linux-foundation.org, Andrew.Cooper3@citrix.com, christina.schimpe@intel.com, david@redhat.com, debug@rivosinc.com, Yu-cheng Yu Subject: Re: [PATCH v6 37/41] selftests/x86: Add shadow stack test Message-ID: References: <20230218211433.26859-1-rick.p.edgecombe@intel.com> <20230218211433.26859-38-rick.p.edgecombe@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230218211433.26859-38-rick.p.edgecombe@intel.com> X-Rspamd-Queue-Id: C915D14002E X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: f4saz9aixtzd7b3u4jhbj1dxbkybp81n X-HE-Tag: 1677160093-300837 X-HE-Meta: U2FsdGVkX18oAM1yMevsHvIheQJZT+DYmXYPaDygpLGULy8SO5QkBx14qPZmaT2PUp6ipdX0drWTznR8wX6y5Hxx3HfKz2SWVw7TDP1T0+sxjhultqSbCpYIP9yArwz1SQLdvFOVuFRM+3mZp1FZdLnmkj4mM1G66LJj9dodgFMXOI8mZ/PRUsu1ejk7o1lVlRm77ejpKZI1M0wS47cWzYP8muwnjvjth59SEy+0nJrN0Szs4i9CjwjrAqLN4ffn2m2daKkH0Rjds3KSkPOp2pPC9n0v0oHzPN+MU/6hMtGCl76do4Un4fDZQ7xlC6iO0v7h2YXwpXNAaNUQ4da/XTh6DojY/WXInJbbT+Fpo6nKDqABaY636GAXI3GHlOTrNX8CxZpEh/HWDeVnu7lj2ABw+451EHK0tdr2tAvIvORPZXQIv4Sd3MDifmA5OchJBkbrfRDSrvclNxzSkx7WAyMrBLlS4ME8t7JkOAPVdBIalZTRMqUyGwBLctq1LS6WpvTFC4UE7W9pzXcGbcd8whLets8A260FuWJqPJ/PUSXPYWigXXuTC9j5NBN16Gz12cQRhs1jB33cI9FEiQsK3Oak1mkRuNcprf86yUMHtm44kiFRjxmPUGNf/+fkQ3B6cAU3cABUI+gbtNMe4e1gGI+CzLdQ5SS2vjtKqpqy4FmDGcsSzrs+Csy/+ahDnoVmcXAOwVWPClFsK7Z4AQn5ncRj5r7g3jAbNuo6l/3izvmtD9MXdp8cN9xMNy1c3DO1cO0/UJgs7MqjfC96cvpzKB4dZcIIjE51G00IeCII1SeM5zcw/xVIKlzTH/lslwDAJ1FDxmjmllptijtz+ewQzEykjV1nYoIudvuXlpp7i5K9B7DiKu16SGyuJuVWd4daaep2jua2PL+1WLnP6pVPcCr8DuSLGBIiH6J78dBm5oaKyxQhSpPphT0zLdagIWE82ds2oUK44Z9NRImFQU7 Ikz4dcYY dPRFePZpF62kaFv0efnI2pjNdg0xXVyEx/0SbmoRupgliHA3hOiwhJRcXkq5OZxlzU5rhdIbN+XZ2wh3nf6YT16bmHDxz3RCG28VHTvcRqT7BM8MrtqkxWybLJpk+0fbYMHO1jh2PzPF8eGIjOpfCXUNYILMYUTStpod8xfoRrMW3oSu/lPRoNMJ1b1bZJ4F80XG0SWW8Lf34FnWmktmn8bTl7X7IaDObkxKkqk7kB4IM9ht9yRCIAJZzn22PEbhYaC9z11uRptc2nsTumWklhee8tTccv/yiPYjMmaGhhH3hehmaJSaEvj/3Ss1emabXe94YyVfGji315x6leMkj2vBdF07r9JmhJQcU9hOdhN/Sp+3B0wioKoRkIwVNug1DhT4i8ggmCd7Y5cVBrlvZh7mT/StkTiCTP6tfBm8lOmw8AOaewCj2nDzHupzEFvPz/NyRVnaOfyFl5Nk= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Sat, Feb 18, 2023 at 01:14:29PM -0800, Rick Edgecombe wrote: > Since this test exercises a recently added syscall manually, it needs > to find the automatically created __NR_foo defines. Per the selftest > documentation, KHDR_INCLUDES can be used to help the selftest Makefile's Well, why don't you make it easier for the user of this to not have to jump through hoops to get the test built? IOW, something like the below ontop. It works if I do $ make -j test_shadow_stack_64 It would only need to be fixed to work when you do $ make -j without arguments as then make does a parallel build. I guess something like ifneq ($(filter test_shadow_stack_64, $(MAKECMDGOALS)),) .NOTPARALLEL: endif needs to happen but I'm not sure... Thx. diff --git a/tools/testing/selftests/x86/Makefile b/tools/testing/selftests/x86/Makefile index a5c5ee73052a..9287dc7c0263 100644 --- a/tools/testing/selftests/x86/Makefile +++ b/tools/testing/selftests/x86/Makefile @@ -14,6 +14,10 @@ top_srcdir ?= ../../.. abs_srctree := $(shell cd $(top_srcdir) && pwd) KHDR_INCLUDES := -isystem ${abs_srctree}/usr/include +test_shadow_stack_64: test_shadow_stack.c helpers.h + cd $(top_srcdir) && $(MAKE) headers + $(CC) -m64 -o $@ $(CFLAGS) $(EXTRA_CFLAGS) $(KHDR_INCLUDES) $^ -lrt -ldl + TARGETS_C_BOTHBITS := single_step_syscall sysret_ss_attrs syscall_nt test_mremap_vdso \ check_initial_reg_state sigreturn iopl ioperm \ test_vsyscall mov_ss_trap \ @@ -22,7 +26,7 @@ TARGETS_C_32BIT_ONLY := entry_from_vm86 test_syscall_vdso unwind_vdso \ test_FCMOV test_FCOMI test_FISTTP \ vdso_restorer TARGETS_C_64BIT_ONLY := fsgsbase sysret_rip syscall_numbering \ - corrupt_xstate_header amx test_shadow_stack + corrupt_xstate_header amx # Some selftests require 32bit support enabled also on 64bit systems TARGETS_C_32BIT_NEEDED := ldt_gdt ptrace_syscall @@ -38,7 +42,7 @@ BINARIES_64 := $(TARGETS_C_64BIT_ALL:%=%_64) BINARIES_32 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_32)) BINARIES_64 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_64)) -CFLAGS := -O2 -g -std=gnu99 -pthread -Wall $(KHDR_INCLUDES) +CFLAGS := -O2 -g -std=gnu99 -pthread -Wall # call32_from_64 in thunks.S uses absolute addresses. ifeq ($(CAN_BUILD_WITH_NOPIE),1) -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette