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 BB874C76188 for ; Mon, 3 Apr 2023 14:31:18 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1D2496B0071; Mon, 3 Apr 2023 10:31:18 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 180176B0074; Mon, 3 Apr 2023 10:31:18 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 01FF96B0075; Mon, 3 Apr 2023 10:31:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id E47706B0071 for ; Mon, 3 Apr 2023 10:31:17 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id B4878ABED4 for ; Mon, 3 Apr 2023 14:31:17 +0000 (UTC) X-FDA: 80640317394.28.F35B407 Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com [64.147.123.25]) by imf13.hostedemail.com (Postfix) with ESMTP id 66DB920004 for ; Mon, 3 Apr 2023 14:31:14 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm1 header.b="m xRyNbN"; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=SXtdgnNv; dmarc=none; spf=pass (imf13.hostedemail.com: domain of kirill@shutemov.name designates 64.147.123.25 as permitted sender) smtp.mailfrom=kirill@shutemov.name ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1680532274; 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=B/Do+b9pnKPWS+TxyE4WQ3cBvHCKsM0Md0bJGMcs1Tg=; b=Wg7+Ndcl7BC779oGVGAcaNPwGnQIaXSMQuEkF96un8u+1D0UQu+HpuZH75r6mzL1dCwfpe 1jLTHEBHELm8WqEElvXony25r4AF9a4gOYLj2mHOBbbAJNufj8DvsA/vJwSUBfujtlqYA2 qJ0R3RD/5bxXz9/9e6pegT9bbLV+mnI= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm1 header.b="m xRyNbN"; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=SXtdgnNv; dmarc=none; spf=pass (imf13.hostedemail.com: domain of kirill@shutemov.name designates 64.147.123.25 as permitted sender) smtp.mailfrom=kirill@shutemov.name ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1680532274; a=rsa-sha256; cv=none; b=ySUimWDeyK3UbkafDHYLgS1Uqrne/0kBLeKLf9gWwMMzynfTQ1asWyIUQ8NtNa4cbE9G9D ZJ8Ej+5DPy71XFGn3EGktBf1ERPjvGWSAEgV2lVlVAUpFdBGyOlZKLqidJI7o6nKtTZggF 5jefEuel8TvC4YliPz7a6KnHvrNC/A8= Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 90381320092B; Mon, 3 Apr 2023 10:31:10 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Mon, 03 Apr 2023 10:31:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shutemov.name; h=cc:cc:content-type:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm1; t=1680532270; x= 1680618670; bh=B/Do+b9pnKPWS+TxyE4WQ3cBvHCKsM0Md0bJGMcs1Tg=; b=m xRyNbNMS737Q+puOd26TJC0aUjkW+vYMYJO4bqi5XPzV+CibVHguIqAG4O24Rs/l thz43eN8HIV7uLg+vzHg2EvQMo9CPLDUFHpsKBByQS07ex8Zq/l0BI/NXIMZWA0L k4M7DM7fz8Dt1Ofux60e/KLgTx8KccnIXOjFW8qBk0D7K2gJnT0dUQEmFZ2HkOGB dDqjDpU3Mcg8H1uP1eixeDwILA4NUbWF2icMlKl1XJUTbi6f8sCZs/GBEPTS4GuJ glhqUpC5vARROT0T3JiaO19YL5s1oJIEJklFdhpGCFrNyCcngQIJx/w7Nf6I4eqE Z7scNlOTev1wJA7YTTMZg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1680532270; x=1680618670; bh=B/Do+b9pnKPWS +TxyE4WQ3cBvHCKsM0Md0bJGMcs1Tg=; b=SXtdgnNvFj1sb/H249OpfeD/MGWVN F2r9NHuzQMOPspIGrKFWd9UetLv3Tn52Y/pOkC7wBaddnjg9eKHdICUKdYiIInZP 5guNpxIEoWV3pFE4J50aHyN7syXPPOmifUAU8YkmBzWGp6TYfWh/QtmX/Xigu6V+ ltGq6QXr6OntWuGm5F1K7Krat1m9oskxvvPLuf8ZL2HpZzkmrK/YxkHzBZdcTd8m g+6lvmO1MtVh/ygYs9p/HNtqHdEwvW+59kQhkt+AO6OlUg6N/rkakudX4sVLX4Cw 7DGj2G1Axl2qT/U2uEz1ddSI8quwwa3YJ2bY//oDpW2hzmhI1/07nZFHg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrvdeijedgjeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesthdttddttddtvdenucfhrhhomhepfdfmihhr ihhllhcutedrucfuhhhuthgvmhhovhdfuceokhhirhhilhhlsehshhhuthgvmhhovhdrnh grmhgvqeenucggtffrrghtthgvrhhnpefhieeghfdtfeehtdeftdehgfehuddtvdeuheet tddtheejueekjeegueeivdektdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmh epmhgrihhlfhhrohhmpehkihhrihhllhesshhhuhhtvghmohhvrdhnrghmvg X-ME-Proxy: Feedback-ID: ie3994620:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 3 Apr 2023 10:31:08 -0400 (EDT) Received: by box.shutemov.name (Postfix, from userid 1000) id B136110D7B3; Mon, 3 Apr 2023 17:31:05 +0300 (+03) Date: Mon, 3 Apr 2023 17:31:05 +0300 From: "Kirill A. Shutemov" To: Dmitry Vyukov Cc: "Kirill A. Shutemov" , Dave Hansen , Andy Lutomirski , Peter Zijlstra , x86@kernel.org, Kostya Serebryany , Andrey Ryabinin , Andrey Konovalov , Alexander Potapenko , Taras Madan , "H . J . Lu" , Andi Kleen , Rick Edgecombe , Bharata B Rao , Jacob Pan , Ashok Raj , Linus Torvalds , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] x86/mm/iommu/sva: Do not allow to set FORCE_TAGGED_SVA bit from outside Message-ID: <20230403143105.rj4l5tqn43t3zcnh@box.shutemov.name> References: <20230403111020.3136-1-kirill.shutemov@linux.intel.com> <20230403111020.3136-3-kirill.shutemov@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Queue-Id: 66DB920004 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: twbks1rbpz6m6gkqauu3he8xqd6cynje X-HE-Tag: 1680532274-277214 X-HE-Meta: U2FsdGVkX1+9fi1ZKCvtbw/5inlptnXU7WKnJVycuMwRZ7xYBm/maPmbcevgmO0QLcH7QjwBVOgYlNegUkglojibgFesk/mAjivcuOsk8X67c0QeMpgN25YaQHECaJCj1sMyMA8la5H/61cXYOjbwmJL6UIJzzWjGWE1gY6OXHuEOb2u3Ui630pXYwOugcogmkbnk1UeenRvHxS+gqJVIif9MnShz31l33usb65wYl8ZduwXtMVCKenu36jA9geMyJNMuOMyoVV5RGPPtVJHkavapH8++K5/4kw+MvMKnHNBps6kfgcLFvyJ+W0pcVe8TutLru7nvVpsGqznAQ7augLLfHvQCUhonryRheb4JElpXlwpEKz+GGQKCKt0xpxgGn+scv9NQLrWVOC19mdtYDGMroqI+znQHoH5SUxwqvwpClhV/ymNU8qc5asE9G7rwxSVloDxKUOo/vybuPheSAR9ab9lTNONI14ERSNkGiK3g6zxOkrT7pEiWJQTy80RqT0RbxO5AEFcFO+OVdQcUUi1q6HgWAyU3H1gC+V/7J3QRQNsvqWhC+X/V5aWztP0gokeuh+lhQvdLessglt5pzEiOcYzhd17OAjwLf9jtUckdwS0IOoCsGVIoUc4bttYKBw4fNHpqGTqEgvSQV+ZC/fErZWilAlTjNKcaewMBcuLIO5msSiejtJwZv/1VQ6Ke8TrGWYjskfLUx9kgeWyjbWuMA6SHp2g63K1ov8il92yT+Lrvf+so5YVjHWQtoTlIi1BMJZWzIg6cabuJdIcBpCAArtUYYf5S6pgNhoJ1YFAcotcrVrH4hwPqnPUjnHzljBD2ZAtJpaO0k4D69VQryzMVwv7fYvb2qnTkr17ecin38zxISWHUS70NaYuorsVips1vGexeXMwxWsxHm6oTzr6g81Wh4h9tnrINvmg6j1RhMviDP4C3vqoFcBdBlDv6/NYj6ahnMJqDLsIkN0 ksyGRRl7 3f0IBkp63mOeojlGgfI6r3TACJoX4HQ/Z21gXuCUguuBAXfQ5SlgQ3Vha2tBdfnAFtXN1jwLJI5jutoIl5I/2SLff5xTVeQ5UqVdBU9XAoZ4GKPToi72A7BDaCZQrh7J9vjTvHkEvOiJ6gVzwapWgAkiOVuhzLJoNPZHLYFpvOv+2Itahc0IoaCDuW6vC9EK2GfqOA5kJxG4JfEjuw22wm/ibURF0Xx8T5aFssaPFMAbG0ZZhWZAYD98FwTtLf5P1PEixhtDjievGXPvfH99z4dg8DLV59QQz+DjSgYrKQv93aR/qvNgpTvY5PV7WH55/mkiGgAOzdt6kj9Jmg35HGpl/eIc6l5Go7zKgJgw11S1FEr75tMfY6EXSG1aRyrBp6LFCZDSB7iRAXTtNXF84dEYoN1TMZw4Aj867yWrKUHl58ko7axpWvBTHU71SimifOL4aUbTqkpaAM2IMxv5u344wV0/lcAF4dJko 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 Mon, Apr 03, 2023 at 03:55:09PM +0200, Dmitry Vyukov wrote: > On Mon, 3 Apr 2023 at 13:10, Kirill A. Shutemov > wrote: > > > > arch_prctl(ARCH_FORCE_TAGGED_SVA) overrides the default and allows LAM > > and SVA to co-exist in the process. It is expected by called by the > > process when it knows what it is doing. > > > > arch_prctl() operates on the current process, but the same code is > > reachable from ptrace where it can be called on arbitrary task. > > > > Make it strict and only allow to set MM_CONTEXT_FORCE_TAGGED_SVA for the > > current process. > > > > Signed-off-by: Kirill A. Shutemov > > Fixes: 23e5d9ec2bab ("x86/mm/iommu/sva: Make LAM and SVA mutually exclusive") > > Suggested-by: Dmitry Vyukov > > --- > > arch/x86/kernel/process_64.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c > > index c7dfd727c9ec..cefac2d3a9f6 100644 > > --- a/arch/x86/kernel/process_64.c > > +++ b/arch/x86/kernel/process_64.c > > @@ -885,6 +885,8 @@ long do_arch_prctl_64(struct task_struct *task, int option, unsigned long arg2) > > case ARCH_ENABLE_TAGGED_ADDR: > > return prctl_enable_tagged_addr(task->mm, arg2); > > case ARCH_FORCE_TAGGED_SVA: > > + if (current != task) > > + return -EINVAL; > > prctl_enable_tagged_addr() checks "task->mm != current->mm". > Should we check the same here for consistency? Or also change the > check in prctl_enable_tagged_addr(). > > arch_prctl() can only do task==current, so I guess "current != task" > is a more reasonable check for prctl_enable_tagged_addr() as well. As of now, prctl_enable_tagged_addr() doesn't have the task on hands. It gets mm as input, so it cannot check the task directly. But functionally it is the same check. I would prefer to keep it this way. Unless anyone feels strongly about it. -- Kiryl Shutsemau / Kirill A. Shutemov