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 29542C47074 for ; Tue, 2 Jan 2024 13:57:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B0A066B028A; Tue, 2 Jan 2024 08:57:03 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id ABA816B028C; Tue, 2 Jan 2024 08:57:03 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 98C5A6B028D; Tue, 2 Jan 2024 08:57:03 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 7A9976B028A for ; Tue, 2 Jan 2024 08:57:03 -0500 (EST) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 48C29A06AC for ; Tue, 2 Jan 2024 13:57:03 +0000 (UTC) X-FDA: 81634522326.09.1524A63 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf20.hostedemail.com (Postfix) with ESMTP id A37671C0004 for ; Tue, 2 Jan 2024 13:57:01 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=Rjz8h67B; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf20.hostedemail.com: domain of rppt@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1704203821; a=rsa-sha256; cv=none; b=djDX5LjNRUff6V1m0eiTM5uaAWfrMY5DlYRtp5bvAnIryrGahPZ+9luFsoaVnX5lkku9os hvB4g+X9nDjsQSc4HK4cqfLfAuD0NhT6UJ7o9cpNPgnf389MnKu10NE6CmzQmWtwG0nuF2 S/R9xckp2KsMzkZqyt1gV5UhyoQjPMA= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=Rjz8h67B; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf20.hostedemail.com: domain of rppt@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1704203821; 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=ygpQ3NWE9mPM1NEz/XOwSqcF2d9rPqL20Nh1YxdAYKI=; b=fyPUIJTJDmPbwVKLYz3GruQtp5jl4We0Ds3zU71esSPhnPSpRHSdMQwsYXpVyGsb8ChwqK 2kfIgdcfmcmCUt9aumQHhU91OgD4P8w6VWEUAFSLzDEV/c4FiiuUCXCX7tOOU8ds81eMyS DPuGBvAeZkh8SNaJVBhOtlTgGq/LM+w= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by ams.source.kernel.org (Postfix) with ESMTP id 17B00B80DC0; Tue, 2 Jan 2024 13:57:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 39CD5C433C8; Tue, 2 Jan 2024 13:56:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1704203819; bh=rQxuLAMr4pQbTcIQCi2LRMYbM09Z6yq1KaBQw0i2III=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Rjz8h67BRpHSuLNqUsuBfgJRholz2cNuwKU+lAWcvhvF4VfoXl61Il+8CBQjfh+ic G7x9Pi6w0los4hsNQbgadVCSSB4hWYRk/SW7vjML7E5obPu5H/NoF+1P8n6RfSzX+7 YPXmNrZu9hECrGWt3H+yAMT0sf0mRO4f4QR7hAG3ydMd2a8NTxMMoaL3ZUNhspx8Wy SMUZToHCseG4Bv50K15+5tr4i3W5srkBGiX0w3tJttEAtjL+vrPs0KPHSvHJCNXvPN uNyOvYLlaywnYFy5gQPcJHm4nwDTLP1UGdKDFOukx2rA5xgzlkeMu+GUHI6Y9QU1Rq /N48OJannnguQ== Date: Tue, 2 Jan 2024 15:56:35 +0200 From: Mike Rapoport To: Andrew Morton Cc: Deepak Gupta , rick.p.edgecombe@intel.com, broonie@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v1] mm: abstract shadow stack vma behind arch_is_shadow_stack_vma Message-ID: References: <20231222235248.576482-1-debug@rivosinc.com> <20231227134514.13629032c39decdf1dddcc75@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231227134514.13629032c39decdf1dddcc75@linux-foundation.org> X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: A37671C0004 X-Stat-Signature: qkrfbpu9xj4wckqmznmf1u94sd7angdq X-HE-Tag: 1704203821-978331 X-HE-Meta: U2FsdGVkX1++LyvT6CjvoQlSCw6CLZED9ChydDJMpICrZWfPu5rhn2czVZvfWHRYM5XqO9NPZuj9Ccl0RjZWg3RejN52KGQ104vkDkkV+kyKSDZeD9EtmjD1LuPdgct+ygolG3WOV7+FZS2AGgUoVu/TosQlNyFNMRYgCz2bdpJ3BZYP4lEOoru+xCQAoNeZ+9Q/+mTSpsQ34jTyWFqceVS0IzvQfKRz6quODMszASsPSECqW368ZyfhDrlUdpW1LQ+qwnG7XVi4fg/oSt4gMQI2gmxrcSCmOjkcJ4BnnF60RnpTUmmsrnDcsVGSVJk0P6enFE9cRinrI17ruApXDHdbtRCUvN22cC1oSMJ71PHRwyUgDf+MAKdEA4wOUef8jitJ/UX80w/dOYoex8KIk8GJBf+tMYMGqR52DRTCW1wvTvxsCRnJhzBBZ9qQ1e/58Q/P7T8N7/ijuFP6vhaLsdTHbrgWrNslz24ehDamt0hz0RB80n5r+13gInEtigmKFyD6k7rFZqoKLwOyGgm3Mt1X0itHTyLXkcoPcotfmfItHR/hXUXjSCscFtXC2qmu2cKk67ccNPhQzeYmg9g40pNW39K09qfPqMkUMnKYR7WwYeL6pKX8f98vxzRapWUaQ57WoiM7K03M83bQHR6o0nO81hS3qPmeHPHZ8vtyEYN5rCqTVjYx1IJ//dSHwcbEhksT/kngoYqhmrIQeBkmsUi15MVpZRuA2VuWTt5N5OI1mqMImpx1ERsmHvtCBQQ0TWoLf/G+Oe7sbXwNK3WuvHhaPPBRxXakmtipB7BFoYgZPPulk2QA6mpEC7S7RKAow6pnIFVahd1pHxHJTlTZbKJaJisefotTFukq24Z5Nfwoa0KwT/Kac4PU1iy89zW+njp4ZrCyklSNHP5U51BtDlg/+vAr7glKWOjXJt8YLSPce9ndE8pIyA== 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: List-Subscribe: List-Unsubscribe: On Wed, Dec 27, 2023 at 01:45:14PM -0800, Andrew Morton wrote: > On Fri, 22 Dec 2023 15:51:04 -0800 Deepak Gupta wrote: > > > x86 has used VM_SHADOW_STACK (alias to VM_HIGH_ARCH_5) to encode shadow > > stack VMA. VM_SHADOW_STACK is thus not possible on 32bit. Some arches may > > need a way to encode shadow stack on 32bit and 64bit both and they may > > encode this information differently in VMAs. > > Is such a patch in the pipeline? Otherwise we're making a change that > serves no purpose. > > > This patch changes checks of VM_SHADOW_STACK flag in generic code to call > > to a function `arch_is_shadow_stack_vma` which will return true if arch > > supports shadow stack and vma is shadow stack else stub returns false. > > > > ... > > > > --- a/include/linux/mm.h > > +++ b/include/linux/mm.h > > @@ -352,8 +352,21 @@ extern unsigned int kobjsize(const void *objp); > > * for more details on the guard size. > > */ > > # define VM_SHADOW_STACK VM_HIGH_ARCH_5 > > + > > +static inline bool arch_is_shadow_stack_vma(vm_flags_t vm_flags) > > +{ > > + return (vm_flags & VM_SHADOW_STACK) ? true : false; > > +} > > The naming seems a little wrong. I'd expect it to take a vma* arg. > Maybe just drop the "_vma"? I'd suggest to use vma_is_shadow_stack() to make it inline with other vma_is_*() tests. -- Sincerely yours, Mike.